Shell 处理文件名中包含空格的文件

最近在学Gradle, 使用git clone 命令下载了一些资料,但是文件名含有空格,看上去不是很舒服,因此想到用shell脚本对其进行批处理,去掉文件名中的空格,注意这里是把所有的空格全去掉

git clone https://github.com/waylau/Gradle-2-User-Guide-Demos.git

Shell脚本:

#########################################################################
# File Name: handle.sh
# Author: LiuWei
# mail: nashiyue1314@163.com
# Created Time: 2015年11月16日 星期一 18时23分22秒
#########################################################################
#!/bin/bash
 
for x in `ls | tr " " "_"`
do
    f="`echo ${x} | tr "_" " "`"
    f1="`echo ${x}| sed 's/_//g'`"
    #echo $f1
    if [ "$f" != "$f1" ]
    then
        mv "$f" "$f1"
    fi
done

  

思路:

  先讲含空格的文件名转化成含其他字符的文件名

  再通过这个文件名,得到含空格的变量

  使用mv 命令

文章来自:

https://www.cnblogs.com/nashiyue/p/4969836.html

原文地址:https://www.cnblogs.com/cbugs/p/10026220.html