如何在冒号后打印任何内容?
输入:
color:white,name:green
所以我想在之后打印任何东西:
输出:
white,green
答案1
简单的sed
方法(虽然您的输入非常简单):
sed 's/[^,:]*://g' file
输出:
white,green
答案2
您还可以通过以下方式执行此操作grep
:
GNU grep
grep -oP '(?<=:)\w+'
便携式 grep
grep -o ':[a-z]\+' | tr -d :
两种情况下的输出
white
green
关于输出的注意事项
如果您希望输出为逗号分隔列表,请通过管道传输到paste
,例如:
grep -o ':[a-z]\+' | tr -d : | paste -sd, -
输出:
white,green
答案3
使用 awk
awk -F':' '{print $2}'