Сценарий оболочки Linux: как переместить все подпапки с заданным именем?

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

srcDir="/home/me/"
archiveDir="/Archive/"
prefix="Blah_"
mv -v -f "$srcDir$prefix*" -t $archiveDir

Хотя существует множество каталогов, начинающихся с 'Blah_', внутри / home / me, это приводит к следующему сообщению об ошибке:

mv: cannot stat `/home/me/Blah_*': No such file or directory

Теперь мне любопытно, что здесь не так. Как изменить вышеприведенный скрипт, чтобы переместить все подпапки, начинающиеся с "Blah", в папку архива?

2 ответа

Решение
mv -v -f ${srcDir}${prefix}* -t $archiveDir

в этом случае, если вы цитируете, * будет интерпретироваться буквально

Как насчет:

find   /home/me   -type   d   -name   "Blah_*"   -exec   mv   -i  {}  /Archive \;
Другие вопросы по тегам