很久没有用linux命令了,最近在补充论文实验,学习了一些常用命令,记录一下防止忘记
wc 统计命令
wc 用于统计,可统计文件的Byte数、字数、或是列数,常用命令:
wc -l filename #显示一个文件的行数
wc -c filename #显示一个文件的字节数
wc -m filename #显示一个文件的字符数
wc -L filename #显示一个文件中的最长行的长度
wc -w filename #显示一个文件的字数
统计多个文件
wc -l filename1 filename2#统计多个文件行数
cat 拼接文件
使用cat分别将三个文件的内容依次打印,再使用>将打印的内容放到文件里
cat a.txt b.txt c.txt > total.txt#将a\b\c三个文件内容竖向拼接输出生成一个total.txt文件
|管道
管道可以将上一个命令的输出作为下一个命令的输入。如实现搜索文档里含某些字段的行,可以用管道实现:
cat a.txt | grep "male" #查看a.txt的内容并搜索含有male的行,结果会打印出a.txt中所有含male的行
grep 搜索
grep实现搜索功能
grep "被查找的字符串" 文件名#用法
grep test *file #在当前目录中,查找后缀有 file 字样的文件中包含 test 字符串的文件,并打印出该字符串的行
cat a.log | grep "loss"#查找log中含有loss的行
tee打印并保存
tee可以在跑模型时将输出保存到文件,且保持原有输出依然会打印在屏幕上
python train.py | tee b.log #运行train.py,将训练的输出同时保存到b.log
sed替换
"s 特殊符号分割线(#/@/%) 被替换的内容 要替换成的内容 特殊符号分割线(#/@/%) g" #sed替换的一般格式
cat a.txt | grep "male" | sed "s#male#123#g" | head #找到a.txt中含有male的行,并且将所有male替换为123,打印出前10行结果
"s#^#123#g" #将每行的开头加上123,^表示在开头位置
sleep
上一次训练还有一段时间跑完,可以提前准备下一次训练,不用到时候手动运行,sleep命令就很好用了。
sleep 10; python main.py#10秒后运行代码文件
参考:
https://www.runoob.com/linux/linux-comm-wc.html
https://www.runoob.com/linux/linux-comm-grep.html