关于linux:如何将文件名更改为小写?

How to change filenames to lowercase?

本问题已经有最佳答案,请猛点这里访问。

我需要使用bash脚本将特定目录中所有文件的所有名称更改为lowercases。此外,我不想更改子目录的名称,因为在Linux上,它被提议如何将所有文件夹和文件重命名为小写?


1
2
3
for file in *; do
    [[ -f"$file" ]] && mv"$file""${file,,}" 2>/dev/null
done

我不确定什么版本的bash引入了${var,,}扩展。


试试这个:

1
for file in * ; do lower=$(echo $file | tr A-Z a-z) && [[ $lower != $file ]] && echo mv $file $lower ;done

它将回送您需要运行的命令。首先检查它们,然后您可以移除回声并再次运行它来执行实际的移动。


请尝试以下操作:

1
for i in $(find . -maxdepth 1 -type f -name"*[A-Z]*"); do mv"$i""$(echo $i | tr A-Z a-z)"; done

〔1〕指