ОС FreeBSD5.1
Как сделать скрипт, который покажет содержимое каталога (и запишет в файл), но так, что перед каждым именем файла был символ '-'.
К примеру:
>ls
file1.txt file3.txt
>ls>/tmp/test.txt
>ee /tmp/test.txt
file1.txt
file3.txtА надо чтоб в test.txt было
-file1.txt
-file3.txt
например так:
ls|awk '{print "-"$1}'
>например так:
>ls|awk '{print "-"$1}'Вот спасибо!
for i in `ls -a1`; do echo -$i>file; done
>for i in `ls -a1`; do echo -$i>file; done
автору: а ты пробовал так делать? во=первых, в файло попадет тока последний файл, а во-вторых если в нужном месте добавить > то все одно работать не будет. И вопрос ко всем - как написать соответствующую прогу, при условии, что файлы будут с именами вида "firstname-secondname-this is real name" ?
Не, не будет так работать, а вот вопрос последний не понял :(>>for i in `ls -a1`; do echo -$i>file; done
>автору: а ты пробовал так делать? во=первых, в файло попадет тока последний файл, а во-вторых если в нужном месте добавить > то все одно работать не будет. И вопрос ко всем - как написать соответствующую прогу, при условии, что файлы будут с именами вида "firstname-secondname-this is real name" ?
>Не, не будет так работать, а вот вопрос последний не понял :(
>
>
>>>for i in `ls -a1`; do echo -$i>file; done
>>автору: а ты пробовал так делать? во=первых, в файло попадет тока последний файл, а во-вторых если в нужном месте добавить > то все одно работать не будет. И вопрос ко всем - как написать соответствующую прогу, при условии, что файлы будут с именами вида "firstname-secondname-this is real name" ?для тех кто в танке: человек сходу написал и АПШИПСЯ в одном символе, вместо > всего лишь нужно >>, например:
for i in `ls -A`; do echo "-"$i >> list.txt; done
>для тех кто в танке: человек сходу написал и АПШИПСЯ в одном символе, вместо > всего лишь нужно >>, например:
>
>for i in `ls -A`; do echo "-"$i >> list.txt; done
Никто не в танке :) и c пропущенным '>' все понятнто что ошибка.
Просто если в каталоге, есть файло с именем, ну скажем,
"1973-Queen-01-Keep Yourself Alive.mp3" - то хрен такая прога сработает. А хотелось бы узнать, как в скрипте перебрать все файлы (включая с такими извращенными именами т.е. с пробелами и всякими прочими символами)? Исключая find . -exec bla-bla
>>для тех кто в танке: человек сходу написал и АПШИПСЯ в одном символе, вместо > всего лишь нужно >>, например:
>>
>>for i in `ls -A`; do echo "-"$i >> list.txt; done
>Никто не в танке :) и c пропущенным '>' все понятнто что ошибка.
>Просто если в каталоге, есть файло с именем, ну скажем,просто у нормальных администраторов НЕТ таких файлов.
>"1973-Queen-01-Keep Yourself Alive.mp3" - то хрен такая прога сработает. А хотелось бы
>узнать, как в скрипте перебрать все файлы (включая с такими извращенными
>именами т.е. с пробелами и всякими прочими символами)? Исключая find .
>-exec bla-bla
Не, ну может у человека дома такое лежит :)>просто у нормальных администраторов НЕТ таких файлов.
>
>>"1973-Queen-01-Keep Yourself Alive.mp3" - то хрен такая прога сработает. А хотелось бы
>>узнать, как в скрипте перебрать все файлы (включая с такими извращенными
>>именами т.е. с пробелами и всякими прочими символами)? Исключая find .
>>-exec bla-bla
>просто у нормальных администраторов НЕТ таких файлов.
а это ответ в стиле M$, но никак не OpenSource.
у нормальных администраторов есть еще пользователи обычно,
а они любят называть все еще не только такими именами, но и по русски. :( Так что вопрос открыт, как все-таки перебрать такие файлы?
>И вопрос ко всем - как написать соответствующую прогу, при условии, что файлы будут с именами вида "firstname-secondname-this is real name" ?Внесу свои 5 копеек ;)
ls |awk '{print "-"$0}' >file