Bash中循环遍历文件名中带有空格的文件

在学校从FTP上下了些电影,想要在手机上看。但是这些电影都是比较高清的,而我的手机是nokia 5233,不能直接看,因此就要转换格式。
    由于电影有好多部,因此我想批量进行格式转换,在linux下使用for循环遍历,然后用do命令进行转换。

    然而,在使用for循环的时候,发现有的电影转换失败,仔细查看,原来是文件名中带有空格,被for循环认为是两个了,为了解决这个办法,在google上一番查阅,终于找到一篇文章解决这个问题,查看原文。

例如当前文件夹下有三个文件



执行一下语句

可以看到,带有空格的文件被当作两个部分,显然不合理


我们在 for循环前面加这么一句
  1. IFS=$(echo -en "\n\b")

再执行
可以看到,问题解决。

你可能感兴趣的:(Linux)