用sed修改线路

时间:2017-03-30 21:03:07

标签: sed

当我在终端写这行时:

location

我得到了这个输出:

echo /site/cdlinux/iso/v0.5/cdlinux-maly-0.5.8.iso | sed "s#.*/##"

这种特殊字符(#。* /)在这种情况下意味着什么?

1 个答案:

答案 0 :(得分:1)

sed "s#.*/##"

#被视为sed命令部分分隔符

.*/ - 一个匹配所有字符的模式,直到遇到输入字符串中的最后一个/(包括),即/site/cdlinux/iso/v0.5/

## - 两个部分分隔符之间的空字符串是替换部分(所有匹配的字符将替换为空字符串)

  

s 命令的语法为“s/regexp/replacement/flags”。
  它的基本概念很简单:s命令尝试匹配模式   空间对提供的正则表达式 regexp ;如果匹配   是成功的,然后那个模式空间的那部分   匹配将替换为 replacement