我对此有点新意,请耐心等待。我想替换附加到变量的某些文本?还是字符串?我不记得它叫什么狄更斯了。
从/ this / here / string /
删除我/
var="delete me /from/this\ here\ string/"
我试过了:
echo $var | sed 's/^\(.* \)\(delete\sthis \)$/\wtf?\1/g'
echo $var | sed 's/.*\//delete this;/g'
awk ${var/123/abc};
我想对“删除我”打印的内容进行讨论。第二部分总是改变,但“删除我”总是存在。我太老了,谢谢你
答案 0 :(得分:2)
试试这个
> var="delete me /from/this\ here\ string/"
> echo "${var/delete me/}"
/from/this\ here\ string/
答案 1 :(得分:1)
这个怎么样?
echo $var|sed 's/\(^[^/]*\)/abc/'
答案 2 :(得分:0)
var="delete me /from/this\ here\ string/"
var="$(printf '%s' "$var" | sed -e 's/^[[:blank:]]*delete[[:blank:]][[:blank:]]*[^[:blank:]]*[[:blank:]]*//' -e 's/\\//g')"
echo "$var"
我的输出:
/from/this here string/
它只是替换单词“delete”和后面的单词,删除当前短语之前和之后的所有空格。这允许它处理“删除我”,“删除这个”,甚至“\ t \ t \ ttt \ tt \ t \ t \ t \ t \ tt_too \ t \ t \ t”,因为“空白”是空格或制表符(\吨)。它只适用于以“删除”开头的两个单词。
我希望这会有所帮助。