cp命令使用两个变量

时间:2016-11-17 12:10:54

标签: bash shell

我想使用两个变量的cp命令但不起作用

#!/bin/sh

PATH="/home/smvm/Dropbox/ssd-tech/SoftSwitch"


SRCPATH=${PATH}/lib/SIPLib/*.a
DESTPATH=${PATH}/include

cp "$SRCPATH" "$DESTPATH"

发生以下错误

copyPaste.sh: 9: copyPaste.sh: cp: not found

1 个答案:

答案 0 :(得分:5)

PATH是一个用于定位可执行文件的特殊变量。使用另一个变量(最好是小写变量)更改脚本中的PATH,您的问题将得到解决:

#!/bin/sh

dir="/home/smvm/Dropbox/ssd-tech/SoftSwitch"


srcfiles=${dir}/lib/SIPLib/*.a
destdir=${dir}/include

cp $srcfiles "$destdir"

作为一般建议 - 不要在bash脚本中使用ALL UPPERCASE VARIABLES,以避免与保留环境变量的潜在冲突。