Переименование для каждого каталога очень просто:
rename 's/\s/_/g' *
Это позволит избавиться от всех пробелов в именах файлов в каталоге и заменить их на '_'. Если вы опустите 'g', он заменит только первый пробел в имени файла, так что не забывайте эту часть. * означает все файлы в каталоге, в котором он запущен.
rename 's/\s/_/g' /home/you/something/*
Заменил бы все пробелы в именах файлов в каталоге: / home / you / something /
Это не распространяется на просмотр многих каталогов, но в целом я бы так и поступил.
Мне нравятся подчеркивания, которые можно было бы заменить:
my file with spaces.txt
на
my_file_with_spaces.txt
Без использования следующего, вместо этого с использованием отрицания.
Вход:
$ cat f.txt
GOOD STUFF
----------------
IRRELEVENT DATA
----------------
IGNORE ALL THESE
----------------
END OF IT
----------------
GOOD STUFF
Я хочу игнорировать строки, начинающиеся со строки "НЕРЕЛЕВЕНТ", "ИГНОРИРОВАТЬ" или "КОНЕЦ":
$ awk '!/^(IRRELEVENT|IGNORE|END)/' f.txt
GOOD STUFF
----------------
----------------
----------------
----------------
GOOD STUFF