cp从string作为源目标

时间:2014-12-27 21:59:12

标签: shell cp

我有一个shell变量$ allpath,其值为

"/opt/in1/InputFile1.csv  /opt/InputFile2.csv" 

表示,当我回音时,我得到上面的字符串。

现在我尝试执行以下操作:

cp "$allpath" /opt/targetdir    

我收到错误:

  

cp:无法统计'/opt/in1/InputFile1.csv /opt/in2/InputFile2.csv':没有这样的文件或目录

但是当我手动输入

cp /opt/in1/InputFile1.csv  /opt/InputFile2.csv  /opt/targetdir    

它做副本 那我怎么能用shell变量来做呢?

2 个答案:

答案 0 :(得分:1)

引号使shell将其解释为一个文件,显然不存在。放下它们,你应该没问题:

cp $allpath /opt/targetdir

答案 1 :(得分:0)

在支持数组的shell中,使用它们。

allpath=("/opt/in1/InputFile1.csv" "/opt/InputFile2.csv")
cp "${allpath[@]}" /opt/targetdir