t98*_*8GF 6 sed text-processing
我很难弄清楚如何sed
在某个定界符之前使用剪切文本。
我收到的输出echo
返回类似于:
valueA=TEXT
Run Code Online (Sandbox Code Playgroud)
我想sed
在之前剪切文本=
并只留下文本。
有关如何完成的任何提示?
您还可以使用cut
:
cut -d= -f2- <<< "$yourvar"
Run Code Online (Sandbox Code Playgroud)
或者
some_command | cut -d= -f2-
Run Code Online (Sandbox Code Playgroud)
-d=
将分隔符设置为 =
-f2-
获取第二个字段和所有以下字段来自@Archemar 的评论,这应该是一个答案:
sed -e s/^[^=]*=//
Run Code Online (Sandbox Code Playgroud)
从@Baard Kopperud 的评论中,该sed
命令可以解释为:
用任意数量的字符 (*) 代替以 (^) 开头的行 (s/),除了 "=" ([^=]) 后跟一个等式符号 (=),没有任何内容 (//)。这将删除从行首到并包括等号的任何内容 - 只留下“=”之后的内容。如果有多个等号,您需要“[^=]*”……您只想删除第一个等号。如果您只使用“.*”,那么您将切到并包括最后一个等号,因为正则表达式“希望”尽可能长,并从尽可能向左开始。