Скажем, у меня есть папка с некоторыми файлами:
/Users/user101/Temp/rentest: ls
fi_name1.txt fi_name2.txt fi_name3.txt
Я ищу гибкий метод переименования. Например, если я делаю:
/Users/user101/Temp/rentest: ls | vim -
Я вхожу в vim:
Теперь, как мне перенаправить это обратно в терминал? И более того, как бы я использовал это в сочетании с mv
командой для пакетного переименования файлов в каталоге?
Я знаю, что есть rename
полезность, и большинство людей ответят, просто изучив кучу terminal
команд, но я считаю, что это гораздо более интересный / гибкий способ сделать это. Кто-нибудь знает метод или пытался сделать это раньше?
РЕДАКТИРОВАТЬ : Существует тенденция, stackexchange
чтобы зацепиться за специфику вопроса. Но я не ищу ответы, которые говорят: «о, вы сделали файлы один за другим, так что просто используйте mv
» или «о, режим редактирования столбцов позволит вам сделать только один вид изменений для всех файлов».
Суть здесь в том, что я не хочу искать Google каждый раз, когда хочу добавить префикс, постфикс или какой-то странный фикс в группу файлов в каталоге. И это может быть не все файлы.
/Users/ivanabraham/Temp/rentest: ls
fi_name1.txt fi_name2.txt fi_name3.txt gi_name3.txt gi_name4.txt
а также
ls | grep 'fi*' | vim -
например.
file1_...
, file2_...
, ... file10_...
, file11_...
. На самом деле вам просто нужно научиться использовать регулярные выражения, а затем использовать его в каждой команде / приложениях, которые поддерживают регулярные выражения, в том числе vi
. Обратите внимание, что ls
результат не должен передаваться в другую команду
mv
команд