什么是错误?

时间:2012-10-02 21:42:51

标签: shell awk

我无法检测到错误原因。

请帮助指出我,这是纠正措施。我是初学者,所以这对我很有帮助。

的mapping.txt:

test1 hello
test2 world

我的Sh档案: 参数1 =你好

a= cat mapping.txt | grep $1 | awk '{print$1}'
echo $a

## Extracting Dump name
b=$(ls -ltr  /home/oracle/$a/$1*.dmp | awk '{print $9}' | tail -1)

我将test1作为echo,但我无法替换/home/oracle/$a/$1*.dmp 脚本

输出:ls:/home/oracle//hello*.dmp:没有这样的文件或目录

我应该做些什么改变让它替换为:/home/oracle/test1/hello*.dmp

1 个答案:

答案 0 :(得分:4)

从错误中,您可以看到未设置变量a

更改您的第一行:

a= cat mapping.txt | grep $1 | awk '{print$1}'

为:

a=$(cat mapping.txt | grep $1 | awk '{print$1}')