shell脚本的一些命令使用
说实话,shell脚本比bat脚本好用多了,各种功能都有,有时得把两个语言互相转化,发现在shell很好实现的在bat却想不到办法实现。当然,在写shell脚本的时候也遇到了许多问题,这里也做一个简单的梳理。
1. 判断文件是否存在
if [ -f "$file" ];then
rm -fr $file
fi
判断目录是否存在
if [ -d "$filePath" ];then
rm -fr $filePath
fi
之前一直把-d和-f乱用,所以吃过许多次亏,一般情况下都是用-d
2. 统计文件夹的大小
du -sh abc
3. 当脚本出现格式问题时,可以用如下命令解决:
sed -i 's/\r$//' make_nsiq.sh
4. 查找文件中的关键词比较快的方法
cat bigfile.txt | parallel --pipe grep 'pattern'
5. 最快的计算一个文件的行数
cat bigfile.txt | parallel --pipe wc -l | awk '{s+=$1} END {print s}'
6. 在大文件里做大量的替换操作
cat bigfile.txt | parallel --pipe sed s^old^new^g
7. 显示上两级目录:
dirname $(dirname $(pwd))
8. 测试test.sh有无语法问题
sh -n test.sh
将test.sh的执行过程全部列出来
sh -x test.sh
9. 读取quan_compound.txt的每一行数据
cat quan_compound.txt | while read line
do
echo $line
done
10. 打包 tar zcvf log.tar.gz log
解压 tar zxvf log.tar.gz
解压 tar -jxf log.tzr.bz2
zip/unzip log.zip

浙公网安备 33010602011771号