2
我遇到了一個很好的單行搜索文本並使用給定數量的尾隨和後續行打印出結果。我正在嘗試創建一個腳本。 到目前爲止,這是我:帶有nawk的腳本不會將輸出打印到屏幕
# *********************************************************
# This uses nawk to list lines coming prior to and after
# the given search string.
# Format: xgrep <string> <file> <before> <after>
# ********************************************************
STR=$1
FILE=$2
BEF=$3
AFT=$4
export STR
export FILE
export BEF
export AFT
nawk 'c-->0;$0~s{if(b)for(c=b+1;c>1;c--)print r[(NR-c+1)%b];print;c=a}b{r[NR%b]=$0}' b=$BEF a=$AFT s=$STR $FILE
的問題是,NAWK命令的輸出不會出現在屏幕
>xgrep "bin/sh" * 0 3
>
但是,如果我在鍵入命令,我得到一個合適的輸出:
>nawk 'c-->0;$0~s{if(b)for(c=b+1;c>1;c--)print r[(NR-c+1)%b];print;c=a}b{r[NR%b]=$0}' b=0 a=3 s="bin/sh" *
#!/bin/sh
export AEGIS_PROJECT=$1
export EDITOR=cat
#!/bin/sh
aegis -cpu $pwd
aegis -dbu $1
#!/bin/sh
cd $HOME/ex_7/src/DTTCom
NRMan alphabuild clean
NRMan alphabuild library ex_7 8.19 app TEST DTTCom debug -j10
#!/bin/sh
cd $HOME/icx/src/DTTCom
NRMan alphabuild clean
NRMan alphabuild library icx_1 1.1 app TEST DTTCom debug -j10
#!/bin/sh
# *********************************************************
# This uses nawk to list lines coming prior to and after
# the given search string.
這是什麼原因導致腳本工作?
謝謝。當我用「'包裝」文件「時它工作。有沒有一種方法可以在腳本中做到這一點,以便用戶不必打擾單引號? – Gayan 2009-04-23 07:18:50