为了测试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代表直接修改读取的文件内容,而非输出到终端
引号中内容代表替换,$代表在文件最后替换,后面跟了一个空格和数字代表每行字符后加空格和数字,代表文件对应的标签序号。
更多Ubuntu相关信息见Ubuntu 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=2
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137042.htm