Ubuntu中获取文件名称并生成列表txt

为了测试caffe,准备了一堆图片准备测试。前面进行了重命名的操作准备,现在需要将文件名全部读取出来生成txt作为标签使用。此过程用到了find命令和sed命令。

先看效果图

这里写图片描述

当然还有后续处理,就是在所有文件名后打上标签序号,这个就是sed命令的作用了,此处我也做成了sh文件,方便使用,代码如下,自行参考修改使用吧。

> 自己写的create_filelist.sh文件,如下 train_file=test.txt path=train/test find $path -name *.jpg > $train_file #'s/pattern/your_word/g' file_path/filename sed -i 's/$/ 6/g' $train_file

1、find命令:
find后跟一个存放想要查找的文件的地址,然后后面是-name参数,其后的参数代表文件名称*.jpg就是代表所有的jpg文件了。
‘>’符号代表输出到文件,此处输出到制定的txt文件中

2、sed命令:
-i代表直接修改读取的文件内容,而非输出到终端
引号中内容代表替换,$代表在文件最后替换,后面跟了一个空格和数字代表每行字符后加空格和数字,代表文件对应的标签序号。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/14782.html