我一直在将附件文件名传递给程序,并且tar命令无法为附件文件创建归档文件,并且附件文件可以在其文件名中包含空格。有人可以帮我在查明根源tar命令无法在unix sun中添加附件文件solaris
这里已将附件文件“V铝2015-0974_ca.pdf”, “V铝2015-0974_ma.pdf”
ksh testing.ksh 2015-0974.htm '"v Al 2015-0974_ca.pdf" "v Al 2015-0974_ma.pdf"' Int 5
testing.ksh
FILE=${1}
ATTACHEDFILES="${2}"
echo ${ATTACHEDFILES}
TARGETENV=${3}
PRIORITY=${4}
FNWP=${FILE%.*}
EXT=${FILE#*.}
FN=${FNWP##*/}
val="tar cvf ${FN}.tar title html email delivertime "${ATTACHEDFILES}""
echo $val
package=${PRIORITY}_$(date +"%Y%m%d%H%M%S")_eytaxalert.nwf
gzip -cv ${FN}.tar > ${package}
exit 0
输出:
a title 1K
a html 33K
a email 4K
2015-0974.tar
预期输出:
a title 1K
a html 33K
a email 4K
a v Al 2015-0974_ca.pdf 20K
a v Al 2015-0974_ma.pdf 15K
2015-0974.tar
RICI: “$ {@:4}” 命令不工作并抛出一个错误:错误的替代。那么这个命令是否可以在Sun solaris上运行? – Praveen
@praveen:你确定你在Solaris系统上使用ksh或bash吗?也许你的脚本有'#!/ bin/sh' shebang行?无论如何,我编辑答案来提供posix兼容的选择。 – rici
我在solaris中使用ksh – Praveen