Linux之shell命令实现-批量去掉文件名中空格,以及批量修改文件名为数字序号文件名

 1 shell下批量出去文件名中的空格

  执行看现象

上面的是执行for循环以后看到的;

然而源目录下的文件如下:

 这样的话想要cat某个具体文件是拿不到的,所以需要去空格处理:

处理方式有很多:如 mv+sed    、rename方式。本次只做简单有效的方式--rename

rename 's/ /_/g' *                 ##表示把当前目录下所有的文件中有空格的都用_表示

 

 

Linux下批量重命名文件名为数字索引编号(0~N.xxx)的方法

 现象:在处理一些数据集的时候,我们经常会碰到数据集的文件名是按时间戳(time stamp),或者其他方式命名的文件,比如下图所示:

或者

 

 

而我们在编写程序时,往往希望读入的这些数据集的文件名是一种更简洁的形式,比如按照索引(index)方式:1.jpg,2.jpg,3.jpg...,那么如何批量重命名一个文件夹下的文件名呢?方法很简单,只需要在Terminal里面进入数据集所在的文件夹,输入以下命令即可:

i=1; for x in *; do mv $x $i.jpg; let i=i+1; done

 

重命名后的数据集如下:

 

 

 实用才是硬道理!!!

 

posted @ 2018-12-25 16:55  云上的听者  阅读(8257)  评论(0编辑  收藏  举报