Чтобы программно переименовать N файлов, вы можете использовать простой цикл для bash
.
#!/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