首页 > 代码库 > 重命名文件空白字符为下划线脚本
重命名文件空白字符为下划线脚本
命令行里操作有空格的文件多少有点不方便,最近也在学脚本,就根据一个重命令空白字符为下划线的脚本,梳理下。
#!/bin/bash # 重命名文件计数 handle_file=0 found_mark=0 for file_name in *; do # 通过grep的返回值来判断 echo "$file_name" | grep -q " " if [ $? -eq $found_mark ];then fileName=$file_name newName=`echo $fileName | sed -e ‘s/ /_/g‘` mv "$fileName" $newName let "handle_file=$handle_file+1" fi done echo "$handle_file file renamed." exit 0
这个脚本比较简单,通过grep判断有空白字符,就直接使用sed替换,mv重命名了。
grep
-q 静默,匹配到返回值为0.这个选项很适合用在脚本里。
对于for循环使用的*通配符匹配列表,现在还有点困惑,是怎么就直接匹配当前目录下了。
不过在命令行中直接使用 * 就已经表现匹配当前目录下的文件了。以为bash可以直接支持正则表达式,不过测试下来并非如此。
[LiuBai@VM.Fedora a C]$ echo * a like [LiuBai@VM.Fedora a C]$ * -bash: ./a: Permission denied [LiuBai@VM.Fedora a C]$ ‘[0-9]$‘ bash: [0-9]$: command not found...
重命名文件空白字符为下划线脚本
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。