Исключение сопоставления с образцом для сценария оболочки

Существует несколько опций выхода взлома там, видят здесь, и здесь.

Но я, конечно, не сделал бы этого. Это - взлом, он не поддерживается яблоком в так или иначе и нет никакой гарантии, что следующее обновление OS X не повредит его и если он делает Вы застреваете со своими резервными копиями в сетевом ресурсе, который в значительной степени бесполезен в той точке; возможно, если Вам только будет нужно начальное резервное копирование, то Вы будете уметь обойтись, но помнить, что резервные копии машины времени являются возрастающими, Вы вероятны не смочь восстановить последнюю версию своих данных.

С некоторым $voodoo удара Вы смогли осуществлять его (получение начального резервного копирования, смотря на метки времени, объединившись...)

С моей точки зрения у Вас есть две опции: Вы или придерживаетесь поддерживаемого решения яблока, может это быть локальными дисками для машины времени или вкладывающий капитал на капсуле времени, или Вы находите другой способ скопировать Ваши два макинтоша к Вашей машине времени предотвращения сервера Linux все вместе.

и на той последней ноте я знаю много людей, которые клянутся superduper, и много лет я использовал iBackup, который является в действительности прославленным GUI для rsync, и это дает мне некоторый комфорт.

1
19.09.2012, 19:21
2 ответа

Похоже, что Вы заново изобретаете существующие инструменты как mmv и rename - существует несколько названных программ rename но тот, о котором я думаю, является жемчугом, переименовывают иначе prename (это включено с perl пакет в debian и производных, возможно другие дистрибутивы также).

Я обеспечил бы некоторые примеры использования для них обоих, но Вы не дали нам пример имен исходного файла (см. мой комментарий выше).


BTW, так как Ваш сценарий является ударом, а не sh, можно заменить if/then/else за дополняющий нуль $number со встроенным ударом printf как это:

printf -v number "%02d" "$counter"

В оболочке POSIX Вы могли использовать number=$(printf "%02d" $counter) вместо этого. printf команда является частью GNU Coreutils.

2
27.01.2020, 23:29

Bash имеет regexp соответствие конструкции:

[[ $string =~ regexp ]]

Это не много справки для того, что Вы хотите сделать, все же. Для извлечения числа межжала из имени файла снимите изоляцию со сверл и сохраните последнюю нескучную последовательность цифр.

shopt -s extglob
number=$filename
number=${number//[0-9][0-9]+([0-9])p}
number=${number%%+([^0-9])}
number=${number##*[^0-9]}
1
27.01.2020, 23:29

Теги

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