Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 如何在Bash中将文件重命名为param case_String_Bash - Fatal编程技术网

String 如何在Bash中将文件重命名为param case

String 如何在Bash中将文件重命名为param case,string,bash,String,Bash,如何使用连字符将目录中的一组文件重命名为param case 一个用JavaScript实现的,但我不确定如何在bash中实现这一点。下面是bash中的一个选项: for file in ./* ; do mv "$file" "$(echo $file | sed 's/\(.\)\([A-Z]\)/\1-\2/g' | tr '[:upper:]' '[:lower:]')" ; done perl的另一种选择: for file in ./* ; do mv "$file" "$(ech

如何使用连字符将目录中的一组文件重命名为
param case


一个用JavaScript实现的,但我不确定如何在bash中实现这一点。

下面是bash中的一个选项:

for file in ./* ; do mv "$file" "$(echo $file | sed 's/\(.\)\([A-Z]\)/\1-\2/g' | tr '[:upper:]' '[:lower:]')" ; done
perl的另一种选择:

for file in ./* ; do mv "$file" "$(echo $file | perl -ne 'print lc(join("-", split(/(?=[A-Z])/)))')" ; done

这可能会有帮助:为什么不使用
node.js