1.从文件中查找指定字符串:
grep ‘energywise’ * #在当前目录搜索带'energywise'行的文件
grep -r ‘energywise’ * #在当前目录及其子目录下搜索'energywise'行的文件
从文件内容查找与正则表达式匹配的行:
$ grep –e “正则表达式” 文件名
查找时不区分大小写:
$ grep –i "被查找的字符串" 文件名
查找匹配的行数:
$ grep -c "被查找的字符串" 文件名
从文件内容查找不匹配指定字符串的行:
$ grep –v "被查找的字符串" 文件名
在ubuntu中根据文本内容全局查找所在位置:
sudo find . -name "*.py" | xargs grep "/home/name/output.txt"
(在所有的后缀.py文件中,查找含有文字为“/home/name/output.txt”所在位置)
2.复制文件夹
复制文件夹下的所有文件: sudo cp -r /home/name/pro/ ./
待复制文件夹 复制地方
3.文件重命名
rename -v 's/39-1001/391001/' *.jpg #将jpg名字中的“39-1001”转化为“391001”
rename -n s/\.jpg$// * rename(25070470000.jpg, 25070470000)
rename -n 's/$/000/' * rename(25070470000, 25070470000000)
rename -n s/$/\.png/ * rename(25070470000000, 25070470000000.png)
rename 's/^/x1/' * 文件名字开头加x1
4.压缩文件
tar cvf 压缩名字 文件夹名字
5.将rgb文件夹下的所有图片名字输出至txt:
ls -R * > 1.txt
6.查看目录文件大小
sudo du -sh /home/name
sudo du -sh /home/name/*
7.文本处理
显示文件行数:wc -l file.txt
删除文件第一行: sed -i '1d' file.txt
数据是以,隔开的,提取特定列:awk -F ',' '{print $11,$12}' crop.txt > crop2.txt 保存数据的11列和12列到另一文件
截取a.txt前100行到b文件:head -100 a.txt >b.txt
截取a.txt后100行到b文件:tail -100 a.txt >b.txt
查看文件a.txt的第190行到196行:sed -n '190,196p' a.txt
如果查看某一行用:sed -n '190,1p' a.txt