[Linux] 在Linux上使用Shell批量重命名含有空格的文件;

#!/bin/bash - 
#===============================================================================
#
#          FILE: rename.sh
# 
#         USAGE: ./rename.sh 
# 
#   DESCRIPTION: 
# 
#       OPTIONS: ---
#  REQUIREMENTS: ---
#          BUGS: ---
#         NOTES: ---
#        AUTHOR: linkscue (scue), linkscue@gmail.com
#       CREATED: 2013年04月03日 09时45分34秒 HKT
#     COPYRIGHT: Copyright (c) 2013, linkscue
#      REVISION: 0.1
#  ORGANIZATION: ATX破晓组
#===============================================================================

if [[ $# == 0 ]]; then
    echo "使用方法: $(basename $0) <目录>";
    echo "实现功能: 批量重命名含有空格的文件名";
    exit 0
fi
dir=$1

find $dir -type f | while read line;            # 只显示文件
    do array[i++]=\"$line\";                    # 获取文件
    echo ${array[i-1]};                         # 为xargs准备
    echo ${array[i-1]// /_} ;                   # 变量替换 
#    echo ${array[i-1]// -*.pdf/.pdf} | sed 's/\ /\_/g' ;         # 变量替换(个人专用的)
done | xargs -n 2 mv 2> /dev/null

 

posted @ 2013-04-03 10:20  scue  阅读(595)  评论(0编辑  收藏  举报