首页 > 其他 > 详细

重命名文件空白字符为下划线脚本

时间:2014-11-26 06:42:47      阅读:456      评论:0      收藏:0      [点我收藏+]

  命令行里操作有空格的文件多少有点不方便,最近也在学脚本,就根据一个重命令空白字符为下划线的脚本,梳理下。

#!/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...


重命名文件空白字符为下划线脚本

原文:http://liubaimoon.blog.51cto.com/9631203/1582604

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!