没有这样的文件或目录

时间:2016-10-18 10:25:43

标签: linux bash shell

我需要重写一些像command ls /home/user/tst_dir/ | wc -l这样的命令来测试另一个函数的用法。所以我写了这个

command() {
local com=""${1}" "${2}" "${3}" "${4}" "${5}""
echo $com
`"${com}"`
}

command ls /home/aliashenko/tst_dir/ \| wc -l

但我得到了

  

ls:没有这样的文件或目录错误。

目录肯定存在,我对它拥有所有权利。我甚至尝试从错误消息中复制ls命令并执行它并且确实执行了。那有什么不对呢?

此处我在/bin/bash/ -vx

下运行
+ gsutil ls /home/aliashenko/tst_dir/ '|' wc -l
+ echo ls
ls
+ echo /home/aliashenko/tst_dir/
/home/aliashenko/tst_dir/
+ echo '|'
|
+ echo wc
wc
+ echo -l
-l
+ 'ls /home/aliashenko/tst_dir/ | wc -l'
/home/aliashenko/2.sh: line 31: ls /home/aliashenko/tst_dir/ | wc -l: No such file or directory
+ local 'com=ls /home/aliashenko/tst_dir/ | wc -l'
+ echo ls /home/aliashenko/tst_dir/ '|' wc -l
ls /home/aliashenko/tst_dir/ | wc -l
"${com}"
++ 'ls /home/aliashenko/tst_dir/ | wc -l'
/home/aliashenko/2.sh: line 34: ls /home/aliashenko/tst_dir/ | wc -l: No such file or directory

0 个答案:

没有答案