Linux 通过忽略文件名中第一个空格后的所有内容来重命名文件
我需要重命名目录中的所有文件,如下所示: 原始文件名:Linux 通过忽略文件名中第一个空格后的所有内容来重命名文件,linux,unix,linux-development,Linux,Unix,Linux Development,我需要重命名目录中的所有文件,如下所示: 原始文件名:ABC_DEFGHIJK_LMNO周四7月30日07:29:14 CEST 2020 重命名文件名:ABC\u DEFGHIJK\u LMNO 因此,基本上我需要在重命名文件时忽略第一个空格后的所有内容。您可以编写一个简单的bash脚本,如下所示: #!/bin/bash cd /path/to/files for f in * do new_name=$(echo "$f" | cut -d ' ' -f1)
ABC_DEFGHIJK_LMNO周四7月30日07:29:14 CEST 2020
重命名文件名:ABC\u DEFGHIJK\u LMNO
因此,基本上我需要在重命名文件时忽略第一个空格后的所有内容。您可以编写一个简单的bash脚本,如下所示:
#!/bin/bash
cd /path/to/files
for f in *
do
new_name=$(echo "$f" | cut -d ' ' -f1)
echo renaming file "$f" to "$new_name"
# mv "$f" "$new_name"
done
如果输出正常,请取消注释
mv
命令以重命名文件。谢谢!!!下面的命令在Oracle Linux上工作:用于f in*;做mv“$f”$(回声$f |切-d'-f1);doneOh我的上帝,是的,总是用双引号引用包含文件名的变量。匆忙中差点忘了。