скрипт для копирования каталогов с определенным инкрементом

Коммерческие организации обычно представляют информацию об использовании только на страницах руководства. Отображение информации об использовании в самой команде не является традиционной функцией Unix (за исключением отображения списка поддерживаемых параметров, но без каких-либо объяснений при ошибке использования). POSIX и его родственники ни о чем подобном не говорят.

Наличие опции - help , которая отображает сводку использования (обычно список опций, по одной в строке, с максимальным описанием для каждой опции ~ 60 символов), является стандартом GNU . Насколько мне известно, это соглашение было инициировано проектом GNU как часть соглашения о двойном тире для многобуквенных имен параметров. Существуют и другие утилиты, такие как утилиты X11, которые используют многобуквенные имена параметров с одним тире и поддерживают -help ; Я не знаю, что было первым.

Команда use принадлежит QNX.

1
24.08.2017, 03:32
3 ответа

Для вашей конкретной проблемы вы можете использовать длину имен файлов, чтобы различать их:

mv ??? first
mv ???? second

Если вы хотите решить эту проблему в более общем случае, вы действительно хотите использовать такой язык, как Python или Ruby, где выполняется цикл по файлам и основная арифметика вменяемы.

2
27.01.2020, 23:50

Это структура каталогов, которую я использую

/
--0.1 - file
--0.2 - file
--0.15 - file
--0.25 - file
--first - dir
--second - dir

Теперь сначала я перенесу файлы 0.1 и 0.2 в каталог "first"

for f in `ls|grep '^0\.[0-9]$'`;do;mv $f first;done;

Затем я Переместим 0,15 и 0,25 в каталог 'second'

for f in `ls|grep '^0\.[0-9][0-9]$'`;do;mv $f second;done

В коде grep '' перечисляет все файлы, соответствующие шаблону, а затем mv перемещает их в соответствующие каталоги.

-1
27.01.2020, 23:50

Если ваша оболочка поддерживает расширение скобок :

для первого приращения:

mv /path/to/0.{0..99} / path / to / newdirectory /

второе приращение:

mv /path/to/0.{0..99}5 / path / to / newdir /

примечание: измените 0 и 99 из {0..99} с первой и последней цифрами вашего приращения.

0
27.01.2020, 23:50

Теги

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