最近写shell脚本比较多,分享踩过的坑,帮助大家避坑
1. 计算文件行数wc -l
返回行数 + 文件名:wc -l filename(直接使用这个结果来数值计算 会出问题)
只返回行数:wc -l < filename 或 cat filename | wc -l
2. grep 考虑二进制文件
实际开发的时候,会使用各种自定义后缀区分不同过程的文件,比如.bak .tmp .uniq等等
有时linux会把文件作为二进制 不搜索 这种情况要使用-a 支持搜索
3. cut awk注意默认分隔符
cut tab, awk 空格
4. mv cp可能失效
mv cp 操作默认会覆盖,但部分机器可能alias cp='cp -i'导致脚本失败,可以先rm后再操作mv cp