- 论坛徽章:
- 0
|
我想把若干命令使用双引号放到一个变量中,然后执行这个变量,但是,总报错,困扰好久,不知道如何解决。。请教各位大神。
具体情况,是这样的:
test.log文件内容:
1 hello world
2 hello kitty
我在命令行中执行:cat test.log | awk '{print $1}'命令时,正常输出
现在,我想把上面的命令放到变量中,然后执行变量,但是报错了:
shell> cmd="cat test.log | awk '{print $1}'"
shell> $cmd
cat: test.log;: No such file or directory
cat: |: No such file or directory
cat: awk: No such file or directory
cat: '{print: No such file or directory
cat: }': No such file or directory
根据上面的出错,说明把cat后面所有的内容当成它的参数了;
我想知道的是,上面的情况如何解决,能够正常执行呢?就是把一堆命令串放到双引号中赋给变量,然后执行这个变量。如何能正常执行呢?
该如何解决?
|
|