薛开宇学习笔记二之总结笔记(用一个预训练模型提取特征)--Linux语法总结

来源:互联网 发布:vb 调用按钮事件 编辑:程序博客网 时间:2024/05/15 00:26

一、为在 images 文件夹的照片生成一个文件列表:

find `pwd`/examples/images -type f -exec echo {} \; > examples/_temp/temp.txt

1)find 指令查找指定目录中的文件。 使用格式    find  [指定查找目录]  [查找规则]  [查找完后执行的action]

具体:find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \;

`pwd` 指的是获得了当前的工作路径,当前路径在caffe-master 的根目录下(如在命令行上输入pwd  显示:/home/k40/caffe-master),所以`pwd`/examples/images指的就是/home/k40/caffe-master/examples/images

查找规则:  -type f   指查找的文件为普通文件

-exec [command]{} \;     将查到的文件执行command操作。-exec查找后执行命令的时候不询问用户,直接执行(-ok 询问)。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格。此例中的‘command’就是echo。


echo > examples/_temp/temp.txt  指的使用echo命令向examples/_temp/temp.txt文件中写入内容。

echo向文件中输出内容的基本方法是使用IO重定向指令——“>”,默认情况下echo输出到标准输出中,使用>指令可重定向输出到文件中,若文件不存在则创建文件

所以这条指令为:在/home/k40/caffe-master/examples/images路径下查找所有普通文件(名),并将其输出到examples/_temp/temp.txt文件中。

二、

sed "s/$/ 0/" examples/_temp/temp.txt > examples/_temp/file_list.txt

sed:是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作

 sed [-nefri] ‘command’ 输入文本   

‘command’ 常用命令:
        a   ∶新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
        c   ∶取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
        d   ∶删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
         i   ∶插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
         p  ∶列印,亦即将某个选择的资料印出。通常 p 会与参数 sed -n 一起运作~
         s  ∶取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!

"s/$/ 0/"中的$:$在正则表达式中表示行尾

所以这条指令为:将examples/_temp/temp.txt文本中的文本按行处理,将每行行尾(\n前)替换为0 并重定向输出到examples/_temp/file_list.txt文本中





1 0
原创粉丝点击