SUNOS 5.9 ppid=$(ps -ef | grep "sendAlert.sh" | grep -v grep | awk '{ print $2 }') pid=$(ps -o pid,ppid -aef|awk '{ if ( $2 == $ppid ) { print $1 }}') if [[ $ppid != "" ]] then echo "kill process $ppid" echo "kill child process $pid" # kill -9 $pid $ppid fi why pid=$(ps -o pid,ppid -aef|awk '{ if ( $2 == $ppid ) { print $1 }}') can not find $ppid. Thanks
我想处理一个文件,先匹配到第某一行如第2行,然后修改从这行往下面数的第3行.用awk怎么处理?我试了下面的语句,好像不行,FCDF被重写了为何改不了第3行? # cat ttt.txt FIRST BEST BEST2 # awk 'BEGIN{print "-----Begin"} {if(/BEST/){FF=NR+1;print FF} if(NR==FF)print "test"} END{print "-----END"}' ttt.txt -----Begin 3 4 -----END
[code] $awk 'BEGIN{print "abcde"-"abc"}' 0 $awk 'BEGIN{print "1234"-"123"}' 1111 $awk 'BEGIN{print "1234G"-"123"}' 1111 $awk 'BEGIN{print "1234G"-"G"}' 1234 $awk 'BEGIN{print "G1234"-"G"}' 0 $awk 'BEGIN{print "G1234"-"1234"}' -1234 $awk 'BEGIN{print "1234G"-G}' 1234 $awk 'BEGIN{print "1234G"+P}' 1234 $awk 'BEGIN{print "1234G"-P}' 1234 $awk 'BEGIN{print "1234G"+0}' 1234 $awk 'BEGIN{print "1234G"-0}...
uname -a |awk '{ printf "%s\n",$2; }' > "$TITLE" echo ${TITLE} 明明打印5581-01,为什么echo ${TITLE} 确输出的为空呢?
刚才发了个帖子没把问题说清楚还是没解决 for FI in $FILENAME do awk -f '[ ]' '{print $FI, $1,$2}' $FI>> myfile done 我想把文件名写到myfile的每一行的前面但是awk中好像已经不识别FI了,请问怎么才能再awk中用awk外定义的变量呢?
[aluns]~/tmp/tmp>cat a2 aaaaa bbbbb cccccc ddddd 11111 22222 33333 44444 [aluns]~/tmp/tmp>awk '{ printf $1 } ' a2 aaaaacccccc1111133333 为什么[aluns]~/tmp/tmp>awk '{ printf $0 } ' a2 aaaaa bbbbb cccccc ddddd 11111 22222 33333 44444[aluns]~/tmp/tmp> 而不是 aaaabbbbbccccccddddd111112222233333 呢??
[aluns]~/tmp/tmp>cat a 33333333333333 4 [aluns]~/tmp/tmp>awk 'for (x =1 ; x <= 3 ;x++ ) {print $1} ' a awk: syntax error at source line 1 context is >>> for <<< (x =1 ; x <= 3 ;x++ ) {print $1} awk: bailing out at source line 1 ------------------------------------------------ ???