我有两个特殊字符,我想在 shell 中获取它们之间的内容。
不要使用 awk ,因为我的 linux 找不到 awk。
echo "ABxxxDE" | sed -e 's/AB\(.*\)DE/\1/g'
将打印出:
xxx
$ sed -n '/WORD1/,/WORD2/p' /path/to/file
$ sed -n '/FOO/,/BAR/p' test.txt
echo "This is a #TEST%" | grep -o \#[a-zA-Z.0-9]*\%
将产生
#TEST%
您还可以使用 sed.. 去除特殊字符。
echo "This is a #TEST%" | grep -o \#[a-zA-Z.0-9]*\% | sed 's/#//g' | sed 's/%//g'
屈服
TEST