我曾尝试在Linux系统上重命名多个文件。我使用rename 's/foo/bar/g' *
我想要更改的所有文件都在当前目录中。
它不会更改文件的名称,但我认为应该。任何帮助将不胜感激。
答案 0 :(得分:2)
一种简单的方法:
答案 1 :(得分:2)
重命名文件mv
mv old_name new_name
使用mv命令会将文件名从old_name
更改为new_name
。
答案 2 :(得分:0)
您已经提到要使用rename
表达式一次重命名多个文件。从技术上讲,更改文件名不能仅使用*
符号。 *
表示所有具有相同名称的文件。我们知道不存在相同名称的相同文件类型,但是您可以重命名文件中的某些选定部分。例如
admin @ home:〜/ works $
ls test*.c
test_car.c test_van.c test_dog.c
admin @ home:〜/ works $
rename 's/test/practice/' *.c
test
被practice
替换。admin @ home:〜/ works $
ls practice*.c
practice_car.c practice_van.c practice_dog.c
答案 3 :(得分:0)
重命名当前目录中文件扩展名的另一种方法,例如重命名body
中的所有.txt
文件:
.csv
这不会影响没有for file in $(ls .); do
mv $file ${file/.txt/.csv}
done
扩展名的文件,并且会提示错误(应根据需要进一步开发)。