当前位置: 技术问答>linux和unix
linux中 [: too many arguments 错误怎么处理?
来源: 互联网 发布时间:2017-05-05
本文导语: shell中有这么一段代码 if [ -e ${v_file_name} ]; then 。。。。。 fi 在aix(6.1.0.0)中执行没有问题,到linux(Red Hat Enterprise Linux Server release 6.1 (Santiago))中执行就报如题的错误,请问这是什么原因?该怎么解决...
shell中有这么一段代码
if [ -e ${v_file_name} ]; then
。。。。。
fi
在aix(6.1.0.0)中执行没有问题,到linux(Red Hat Enterprise Linux Server release 6.1 (Santiago))中执行就报如题的错误,请问这是什么原因?该怎么解决?谢谢!!!
if [ -e ${v_file_name} ]; then
。。。。。
fi
在aix(6.1.0.0)中执行没有问题,到linux(Red Hat Enterprise Linux Server release 6.1 (Santiago))中执行就报如题的错误,请问这是什么原因?该怎么解决?谢谢!!!
|
是有多个文件吗?文件是否需要一个一个的进行-e 判断呢?如需要,改改脚本吧。
|
sh
ksh
csh
or anything else?
ksh
csh
or anything else?
|
if [ -e "${v_file_name}" ]; then
echo yes
fi
|
${v_file_name} 这个参数中间应该有空格或特殊字符,需要用双引号引起来,楼主可以查查双引号的作用,会让其中的元字符失效。
|
楼主可以提供一个${v_file_name} 具体的值出来吗,方便提供建议
|
一个值就有可能是多个文件的吧 那这样就要拆开处理了
|
分割,取第一个域,然后判断第一个域值是否为空就可以了
weblogic@z174774C6c16g120gs11-1:~/file> ll
total 0
-rw-r--r-- 1 weblogic bea 0 2013-12-10 08:13 file1.txt
-rw-r--r-- 1 weblogic bea 0 2013-12-10 08:14 file2.txt
weblogic@z174774C6c16g120gs11-1:~/file> name="file1.txt file2.txt"
weblogic@z174774C6c16g120gs11-1:~/file> echo $name | cut -d ' ' -f1
file1.txt
weblogic@z174774C6c16g120gs11-1:~/file> file=
weblogic@z174774C6c16g120gs11-1:~/file> echo $file | cut -d ' ' -f1
weblogic@z174774C6c16g120gs11-1:~/file> echo $?
0
weblogic@z174774C6c16g120gs11-1:~/file>
|
分别判断吧,先解析有多少文件名称,然后依次判断是否存在