Чтобы программно переименовать N файлов, вы можете использовать простой bash
цикл for.
#!/bin/bash
set -eux
# find all your files by using a `grep` pattern
pattern="insert_filename_pattern_here" # you must enter your filename pattern here
# create an array of filenames and split on newlines
IFS=$'\n'
tmp=($(ls | grep ${pattern}))
unset IFS
# for each filename
for filename in "${tmp[@]}"; do
# rename the filename to use "_" character instead of a " " character
mv -v "${filename}" "${filename// /_}"
done
Если у вас меньше , чем 5 имен файлов, то вы можете вручную ввести во всех именах файлов и использовать rename
команду как выше решение предлагает. Но для меня ... Я предпочитаю программное решение ... даже когда есть только 4 файла.
п.с.
если вы не знакомы с Bash
расширением параметров (то есть ${filename// /_}
), вы можете использовать rename
команду:
if ((0)); then
mv -v "${filename}" "${filename// /_}"
else
rename ' ' '_' "${filename}"
fi
bash
цикл for: см. мое решение здесь .