Подробнее, пожалуйста. Что говорит на первую из приведенных команд? (Хотя лучше *.zip, конечно.)Пока ничего не вышло.
Составляем скрипт (разнообразные вопросы по утилитам)
Модератор: Модераторы разделов
-
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
Re: Составляем скрипт
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
-
- Сообщения: 313
- ОС: Linux
Re: Составляем скрипт
[...tmp]$ unzip ../download/*zip
Archive: ../download/0.4.8a_modpack.zip
caution: filename not matched: ../download/012Goldenlines.zip
caution: filename not matched: ../download/EX951F.zip
caution: filename not matched: ../download/John_Wiley_And_Sons_501_Web_Site_Secrets_Feb_2004.zip
caution: filename not matched: ../download/LeoDocs-4.3-a4.zip
caution: filename not matched: ../download/PassReminder-GTK-0.5.zip
caution: filename not matched: ../download/PassReminder-src-0.5.zip
caution: filename not matched: ../download/PassReminder_GTK-0.6.1.zip
.....
-
- Бывший модератор
- Сообщения: 1571
- ОС: Cygwin
Re: Составляем скрипт
по простому:
ls *.zip | xargs unzip
ls *.zip | xargs unzip
-
- Сообщения: 313
- ОС: Linux
Re: Составляем скрипт
$ ls *.zip | xargs unzip
Archive: vl_01.zip
caution: filename not matched: vl_02.zip
caution: filename not matched: vl_03.zip
caution: filename not matched: vl_04.zip
caution: filename not matched: vl_05.zip
caution: filename not matched: vl_06.zip
caution: filename not matched: vl_07.zip
caution: filename not matched: vl_08.zip
caution: filename not matched: vl_09.zip
caution: filename not matched: vl_10.zip
caution: filename not matched: vl_11.zip
....
-
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
-
- Бывший модератор
- Сообщения: 1005
- Статус: добрый хиппи
Re: Составляем скрипт
Код: Выделить всё
for i in `ls -1`; do unzip `echo $i`; done;
Ушёл навсегда. В личку не заглядываю.
-
- Бывший модератор
- Сообщения: 7275
- Статус: Пенсионер в законе
- ОС: Cintu
Re: Составляем скрипт
или так, или
find path -name \.zip -exec unzip {} \;
или
find path -name \.zip | xargs unzip
ls - не фильтр, и потому не работает, по каналу от нее передается текстовый список файлов, а не имена файлов как аргументы следующей команды
-
- Бывший модератор
- Сообщения: 1005
- Статус: добрый хиппи
Re: Составляем скрипт
Действительно, find проще... Не подумал.
Ушёл навсегда. В личку не заглядываю.
-
- Сообщения: 313
- ОС: Linux
Re: Составляем скрипт
Очень сожалею но ничего не делает и ничего не выводит в консоль (зипы в каррент директории), а
выводит хелп от unzip.
А вот работает.
Молодец StraNNicK
Код: Выделить всё
find ./ -name \.zip -exec unzip {} \;
Код: Выделить всё
find ./ -name \.zip | xargs unzip
А вот
Код: Выделить всё
for i in `ls -1 *zip`; do unzip `echo $i`; done;
Молодец StraNNicK
-
- Сообщения: 1030
- Статус: собирающий миры
- ОС: Debian
Re: Составляем скрипт
> Молодец StraNNicK
:megalol: :megalol: :megalol: :megalol: :new_megalol: :new_megalol: :new_megalol: :lol: :lol: :lol:
ах да... привлекло название темы - смеялся
:megalol: :megalol: :megalol: :megalol: :new_megalol: :new_megalol: :new_megalol: :lol: :lol: :lol:
ах да... привлекло название темы - смеялся
Molchanov Alexander (aka Xor)
*offtopic* - ololo!
*offtopic* - ololo!
-
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
Re: Составляем скрипт
Не совсем так:find path -name \.zip -exec unzip {} \;
find path -name "*.zip" -exec unzip {} \;
Или лучше даже так:
find path -iname "*.zip" -exec unzip {} \;
Но это всё же не совсем то, что вариант Странника, т.к. имелись ввиду всё же zip-файлы в текущем каталоге, а не во всех подкаталогах.
Второй же вариант (с xargs) не сработает вообще, т.к. там опять же получится "unzip file1 file2 ...".
P.S. Вот что бывает, когда программа нестандартно обрабатывает аргументы командной строки...
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
-
- Сообщения: 10
Re: Составляем скрипт
В общем возникла такая проблема, не могу очистить директории, в которых расплодилось большое количество файлов.
если дать команду rm * внутри, то выдаст что-то типа
www# rm *
/bin/rm: Argument list too long.
если дать команду на удаление дирректории, то либо скажет
www# rm -r tmp/
rm: fts_read: Cannot allocate memory
либо вроде как начнет удалять.. но процесс этот чрезвычайно медленный, и за час ожидания мне не удалось получить хоть какой-то результат.
В общем что можно поделать в этой ситуации?
если дать команду rm * внутри, то выдаст что-то типа
www# rm *
/bin/rm: Argument list too long.
если дать команду на удаление дирректории, то либо скажет
www# rm -r tmp/
rm: fts_read: Cannot allocate memory
либо вроде как начнет удалять.. но процесс этот чрезвычайно медленный, и за час ожидания мне не удалось получить хоть какой-то результат.
В общем что можно поделать в этой ситуации?
-
- Сообщения: 2223
- Статус: Не очень злой админ :-)
- ОС: SuSE, CentOS, FreeBSD, Windows
Re: Составляем скрипт
Вот вам навскидку пара вариантов:
Код: Выделить всё
cd tmp/; ls -a | grep -v ^.$ | grep -v ^..$ > ~/filelist; while read i; do rm -vf $i; done < ~/filelist; rm ~/filelist
Код: Выделить всё
find tmp/ -type f -exec rm -vf {} \;
-
- Сообщения: 10
Re: Составляем скрипт
Спс, я попробую.. но второй в общем тоже выдает cannot allocate memory
А первый.. что ж .. в процессе
У меня в связи с этим такой еще вопрос появился.. Ведь по идее директория содежрит инфу о файлах, которые в ней лежат. Т.е если ее убить, то все файлы умрут автоматически, без всяких там проверок и прочего. можно такое как-нибудь реализовать?
А первый.. что ж .. в процессе
У меня в связи с этим такой еще вопрос появился.. Ведь по идее директория содежрит инфу о файлах, которые в ней лежат. Т.е если ее убить, то все файлы умрут автоматически, без всяких там проверок и прочего. можно такое как-нибудь реализовать?
-
- Сообщения: 2223
- Статус: Не очень злой админ :-)
- ОС: SuSE, CentOS, FreeBSD, Windows
Re: Составляем скрипт
Можно, но не нужно, ибо слишком опасно.
P.S. По поводу "cannot allocate memory": сколько модулей памяти у вас и каков их объем, кто их производитель (производители)? Сдается мне, что надо бы вам погонять memtest на своей машине...
P.S. По поводу "cannot allocate memory": сколько модулей памяти у вас и каков их объем, кто их производитель (производители)? Сдается мне, что надо бы вам погонять memtest на своей машине...
-
- Бывший модератор
- Сообщения: 1571
- ОС: Cygwin
Re: Составляем скрипт
find -delete
-
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
Re: Составляем скрипт
cd tmp/; ls -a | grep -v ^.$ | grep -v ^..$ > ~/filelist; while read i; do rm -vf $i; done < ~/filelist; rm ~/filelist
ls -a | grep -v ^.$ | grep -v ^..$ -- это ведь то же самое, что и ls -A или я что-то путаю? И ls -A | while read тоже, по-моему, можно сказать.
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
-
- Сообщения: 2223
- Статус: Не очень злой админ :-)
- ОС: SuSE, CentOS, FreeBSD, Windows
Re: Составляем скрипт
Насчет ls -A вы ничего не путаете, это меня память подвела - крайне редко пользуюсь этой опцией (да практически и не пользуюсь), вот и забываю о ее существовании, а покопаться в man ls, каюсь, поленился. И со вторым замечанием согласен - писал, что называется, "быстро и грязно", а в таких случаях у меня, бывает, случаются рецидивы чайничества, когда чешешь правое ухо левой рукой через голову (и хорошо еще, что через голову, а не через что-нибудь другое ).
-
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
Re: Составляем скрипт
Ну, это понятно Я ведь не в качестве замечания, а для красоты.Насчет ls -A вы ничего не путаете, это меня память подвела - крайне редко пользуюсь этой опцией (да практически и не пользуюсь), вот и забываю о ее существовании, а покопаться в man ls, каюсь, поленился. И со вторым замечанием согласен - писал, что называется, "быстро и грязно", а в таких случаях у меня, бывает, случаются рецидивы чайничества, когда чешешь правое ухо левой рукой через голову (и хорошо еще, что через голову, а не через что-нибудь другое ).
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
-
- Сообщения: 28
Re: Составляем скрипт
как сделать исполняемый файл, как bat в виндах? какое расширение должно быть? куда его положить чтобы отовсюду можно было его запускать? как запускать (как команду, или ./xxx или yyy xxx или еще как)?
-
- Бывший модератор
- Сообщения: 1571
- ОС: Cygwin
Re: Составляем скрипт
1) написать
2) пофиг, обычно никакого, если хочешь - можешь поставить sh (shell script)
3) Если всем, то лучше в /usr/local/bin, только себе - ~/bin/
4) Если 3, то можно просто, в противном случае - с путем (абсолютным или относительным), из текущей директории: ./<имя файла>
Для работы нужно поставить атрибут "исполняемый": chmod +x <имя файла>
2) пофиг, обычно никакого, если хочешь - можешь поставить sh (shell script)
3) Если всем, то лучше в /usr/local/bin, только себе - ~/bin/
4) Если 3, то можно просто, в противном случае - с путем (абсолютным или относительным), из текущей директории: ./<имя файла>
Для работы нужно поставить атрибут "исполняемый": chmod +x <имя файла>
-
- Сообщения: 183
-
- Сообщения: 119
- ОС: Debian Squeeze
-
- Сообщения: 7
Re: Составляем скрипт
Всем привет!
Есть текстовый файл (допустим какой-нибудь log)
с огромным количеством строк
Подскажите, как удалить все строки, содержащие
2 или 3 известные комбинации символов.
И еще - как поменять времена создания, доступа и
модификации файла.
При этом использовать штатные стредства, т.е. из командной строки bash, в mc или в vi.
Заранее благодарен всем.
Есть текстовый файл (допустим какой-нибудь log)
с огромным количеством строк
Подскажите, как удалить все строки, содержащие
2 или 3 известные комбинации символов.
И еще - как поменять времена создания, доступа и
модификации файла.
При этом использовать штатные стредства, т.е. из командной строки bash, в mc или в vi.
Заранее благодарен всем.
-
- Сообщения: 1019
- Статус: Экс-металлюга
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Составляем скрипт
> И еще - как поменять времена создания, доступа и модификации файла.
touch
touch
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
- Сообщения: 7
Re: Составляем скрипт
madskull, grep-ом я вижу все строки, а как сделать, чтоб они удалились
из файла?
Можно полный синтаксис строки?
Вопрос все-таки в разделе для чайников ))
sash-kan
а touch у меня выставляет текущее время, а не то, что я хочу
из файла?
Можно полный синтаксис строки?
Вопрос все-таки в разделе для чайников ))
sash-kan
а touch у меня выставляет текущее время, а не то, что я хочу
-
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: Составляем скрипт
> а как сделать, чтоб они удалились из файла?
1. запихнуть вывод в другой файл. удалить, переименовать.
2. воспользоваться sed-овской опцией -i (sed -i ...)
1. запихнуть вывод в другой файл. удалить, переименовать.
2. воспользоваться sed-овской опцией -i (sed -i ...)
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог