常用的shell处理txt文本命令集合

以下是部分的shell命令集合希望能对大家有所帮助

ls -R  /home/jiaotong404/LH/data/HK_data/JPEGImages/*.jpg > file.txt   //将文件夹下的jpg文件名都输出到file.txt

find /dir -name "*.jpg" > train.txt   //将dir文件夹下jpg的名称写入train.txt

awk 'BEGIN{ 100000*srand();}{ printf "%s %s\n", rand(), $0}'   file.txt |sort -k1n | awk '{gsub($1FS,""); print $0}' >train.txt    //cd到当前文件夹下,将file.txt内容打乱后输出到train.txt
 
paste read.txt read1.txt > out.txt  //将两个行数相等的txt文件,合并成两列
cat read.txt read1.txt >>out.txt   //两个txt行尾合并

sed -i '/1111/a\2222' a.txt   在a.txt中找到所有符合1111后面另起一行加上2222

sed -i '/1111/2222' a.txt   //表示将a.TXT内1111替换成2222
sed -i "s/^\/home\/jiaotong404\/LH\/data\/HK_data/\/Annotations\//g" train.txt    //其中\/表示转义\,^表示从行首开始替换 g表示全局替换
split -l 3 a.txt spfile.    //表示将a.txt按照每3行分割一次,生成spfile.aa spfile.ab 等文件

猜你喜欢

转载自blog.csdn.net/weixin_41399111/article/details/83552093