请教:脚本中使用awk的变量问题
在脚本中调用awk或grep发现不能使用变量,请高手指教
#! /bin/bash
LATEST_FILE="4.test"
FILELIST_LOG=tmp.list
awk '{ while ( getline >0 ) { if ( $1 ~ /$LATEST_FILE/) { exit } else { print $1 }} }' $FILELIST_LOG
原本希望显示4.test前的字符串后退出,执行后不能匹配到4.test
[test@WebServer eriback]$ more tmp.list
(218.200.221.33:test)
bytes)
1.test
2.test
3.test
4.test
[test@WebServer eriback]$ ./testawk
bytes)
1.test
2.test
3.test
4.test
把脚本改成
#! /bin/bash
LATEST_FILE="4.test"
FILELIST_LOG=tmp.list
awk '{ while ( getline >0 ) { if ( $1 ~ /4.test/) { exit } else { print $1 }} }' $FILELIST_LOG
就没有问题
[test@WebServer eriback]$ ./testawk
bytes)
1.test
2.test
3.test
#! /bin/bash
LATEST_FILE="4.test"
FILELIST_LOG=tmp.list
awk '{ while ( getline >0 ) { if ( $1 ~ /$LATEST_FILE/) { exit } else { print $1 }} }' $FILELIST_LOG
原本希望显示4.test前的字符串后退出,执行后不能匹配到4.test
[test@WebServer eriback]$ more tmp.list
(218.200.221.33:test)
bytes)
1.test
2.test
3.test
4.test
[test@WebServer eriback]$ ./testawk
bytes)
1.test
2.test
3.test
4.test
把脚本改成
#! /bin/bash
LATEST_FILE="4.test"
FILELIST_LOG=tmp.list
awk '{ while ( getline >0 ) { if ( $1 ~ /4.test/) { exit } else { print $1 }} }' $FILELIST_LOG
就没有问题
[test@WebServer eriback]$ ./testawk
bytes)
1.test
2.test
3.test
作者: dracula2011 发布时间: 2011-06-04
把awk中的shell变量这样'$LATEST_FILE'或'"$LATEST_FILE"'引起来
作者: shplpy 发布时间: 2011-06-04
感谢楼上,再请教一下ls带变量呢
[test@WebServer ftptestloc]$ more testinteg
#! /bin/bash
for file in `cat /home/test/ftptestloc/tmp.list`
do
echo $file
ls '$file'
done
[test@WebServer ftptestloc]$ ./testinteg
1.test
ls: $file: No such file or directory
2.test
ls: $file: No such file or directory
3.test
ls: $file: No such file or directory
4.test
ls: $file: No such file or directory
试了用‘’ 或“”或不带都是这样
[test@WebServer ftptestloc]$ more testinteg
#! /bin/bash
for file in `cat /home/test/ftptestloc/tmp.list`
do
echo $file
ls '$file'
done
[test@WebServer ftptestloc]$ ./testinteg
1.test
ls: $file: No such file or directory
2.test
ls: $file: No such file or directory
3.test
ls: $file: No such file or directory
4.test
ls: $file: No such file or directory
试了用‘’ 或“”或不带都是这样
作者: dracula2011 发布时间: 2011-06-04
回复 dracula2011
双引号
双引号
作者: yinyuemi 发布时间: 2011-06-04