sed awk
1 替换文件某一行
将文件./config/patchconfig/patch_config.json 的第二行替换为 "path": "../patchfiles",
将文件aaa.txt中的第三行替换为888
content='"path": "../patchfiles", ' sed -i "2c${content}" ./config/patchconfig/patch_config.json
sed -i '3c888' ./aaa.txt
2 替换某个字符
sed -i "s/;/GO/g" xxx.sql
3 awk 获取可执行文件名
#$NF为最后一列
which nginx | awk -F '/' '{print $NF}'
4 awk 显示除最后一列的所有列
awk '{$NF="" ;print $0}'
5 变量路径拆分
a='which nginx' ##### /usr/local/nginx/nginx echo ${a%/*} #### /usr/local/nginx/
5 获取文件所在目录
which nginx | xargs dirname
6 查找包含关键字的文件并拷贝到指定文件夹
find . -iname "*.json" |xargs grep redis |awk '{print $1}' |cut -d ":" -f 1 |xargs -i scp {} /newpath/ //(济南小老虎友情提供) https://www.cnblogs.com/jinanxiaolaohu/
7 sed 替换某一行
sed -i '7c \"build\": \"ng build -c=production && xcopy .\\\\dist-rollup\\\\* %EnvPath%\\\\web\\\\apps\\\\fi\\\\gl\\\\web\\\\ /Y /D /R /K /F /S \",' .\package.json
8 双引号处理
sed -ri "s#import \{ TreeTableModule \} from \x27@farris/ui-treetable\x27;##g" .\projects\bo-accountbalancefront-balanceinit\src\app\balanceinit\balanceinit.module.ts
9 awk 删除文本中的某些列
awk '{$3="";$4="";$5="";print $0}' a.txt > 2.txt
10 sed 提取匹配的内容
#sed 正则 \d不标示数字 只能用[0-9] sed -r -n 's/^.*路径偏差:\s?(-?[0-9]+).*$/\1/p' tt.log
参考:
https://blog.csdn.net/nanaranran/article/details/81203905
https://www.cnblogs.com/seasonzone/p/11274788.html
https://zhidao.baidu.com/question/878349927740895212.html
https://www.cnblogs.com/jinanxiaolaohu/
特殊符号对应16进制
|
\x20 |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步