сценарий - извлекает несколько файлов

Необходимо выполнить их в интерактивном режиме (от командной строки) для наблюдения их в окне. Иначе процессу (процессам), выполненному в фоновом режиме и таким образом, не связали окно с ними.

0
задан 2 May 2011 в 20:11
2 ответа

Попробуйте это, Вы отсутствуете; разделить обе команды. Также & вероятно, не нужно, Вы могли использовать его для параллелизации tar вызовы, но это, вероятно, принесет больше вреда, чем пользы, если у Вас будет больше чем несколько файлов (то они будут конкурировать за ввод-вывод и ЦП).

Для сортировки списка файлов правильно можно использовать sort -V, какие виды, принимающие во внимание номера версий ( * подстановочный знак на ударе или плоскости sort перечислил бы версию 10 перед версией 4, как 1 <4). Это должно работать:

for f in `ls live*.tgz | sort -V`; do echo $f; tar xzvf $f; done
1
ответ дан 4 December 2019 в 14:46

Не протестированный, память формы:

ls -1rt live*tgz | xargs tar xvf

Объяснение:

  • ls -1 -> перечисляют файлы в одном colum
  • ls -t -> перечисляют файлы на основе времени изменения (лучше всего подход ко времени создания)
  • ls -r -> перечисляют в обратном порядке (более старый первый)

Затем список передается по каналу, чтобы смолить канавку xargs, таким образом, tar берет каждый файл один за другим и распаковывает их, как Вы хотели от более старого до более нового.

HTH

1
ответ дан 4 December 2019 в 14:46

Теги

Похожие вопросы