我有一个 /tmp/aa/bb.txt 的文件。我现在要把这个路径替换成 tmp-aa-bb.txt
现在的处理方法是 echo "/tmp/aa/bb.txt" | sed "s/\//-/g" | cut -b 2-
想问下是否有命令可以直接匹配替换后面部分。
Linux sed 运维 shell
echo "/tmp/aa/bb.txt" | tr "/" "-" | cut -b 2-
这样?
如果是不想要匹配第一个字符,那么正则的负向预查也能搞定。可惜sed不支持,用Python就是这样
# encoding: UTF-8 import re print re.sub(r'(?!^)\/','-', '/tmp/aa/bb.txt')
输出 /tmp-aa-bb.txt
/tmp-aa-bb.txt
语句越复杂,可维护性越低,何必动这种心思。
sed: can't move 'wifi.confl5tFtt' to 'wifi.conf...
shell怎么多行并作一行处理?
怎么修改匹配到的模式?
shell脚本:ambiguous redirect
linux下目录权限的问题
mac怎么在终端中输入某个脚本执行的进度百分比?
学习Linux的几点建议
最先进的战舰也使用Linux