Oca*_*shu 2 linux bash awk sed
所以,我发现了一个很大的删除两个模式之间的文本和打印两个分隔符之间的文本,但我还没有找到上打印使用bash功能,两种模式之间的文本任何东西.
如果我有:
"Alas poor Yorik, I knew him well"
Run Code Online (Sandbox Code Playgroud)
我想打印"穷人"和"好"(独家)模式之间的所有内容我会得到:
" Yorik, I knew him "
Run Code Online (Sandbox Code Playgroud)
我怎么能用sed或awk这样的东西来实现呢?
dtpwmbp:~ pwadas$ echo "Alas poor Yorik, I knew him well" | sed -e 's/^.*poor //g;s/ well.*$//g'
Yorik, I knew him
dtpwmbp:~ pwadas$ echo "Alas poor Yorik, I knew him well" | awk '{sub(/.*poor /,"");sub(/ well.*/,"");print;}'
Yorik, I knew him
Run Code Online (Sandbox Code Playgroud)
用于文件输入:
dtpwmbp:~ pwadas$ echo "Alas poor Yorik, I knew him well" > infile
dtpwmbp:~ pwadas$ cat infile
Alas poor Yorik, I knew him well
dtpwmbp:~ pwadas$ cat infile | sed -e 's/^.*poor //g;s/ well.*$//g'
Yorik, I knew him
dtpwmbp:~ pwadas$ sed -e 's/^.*poor //g;s/ well.*$//g' < infile
Yorik, I knew him
dtpwmbp:~ pwadas$ cat infile | awk '{sub(/.*poor /,"");sub(/ well.*/,"");print;}'
Yorik, I knew him
dtpwmbp:~ pwadas$ awk '{sub(/.*poor /,"");sub(/ well.*/,"");print;}' < infile
Yorik, I knew him
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4623 次 |
| 最近记录: |