我有一个列表文件,它使用/test/files/*。{csv,xls,xlsx,gz,zip,tar,txt,dtxt,error,log,out}作为脚本myscript.sh的参数。 该脚本应该查看文件是否存在,文件是否可读写,并选择每个文件并进行加密。但是脚本在加密第一个文件后停止。 例如:它将file1.csv加密为file1.csv.gpg并停止。它不会拾取路径中下一个文件。
usr/bin/gpg --batch --yes -r 'keyname' --trust-model always --encrypt-files /test/files/*.{csv,xls,xlsx,gz,zip,tar,txt,dtxt,error,log,out}
这可以正常工作并加密所有文件,但是如果文件属于其他用户或组,则该文件失败,因为当前用户没有权限。
因此,我编写了脚本来评估文件是否存在,文件是否可读写。
FILE=$1
if [ -e $FILE ]
then
echo "File exits"
if [[ -r $FILE && -w $FILE ]]
then
usr/bin/gpg --batch --yes -r 'keyname' --trust-model always --encrypt-files $FILE
echo "Encryption Successful"
else
echo "File not accessible"
fi
else
echo "File doesn't exits"
fi
脚本应成功加密/ test / files / *中的所有文件。{csv,xls,xlsx,gz,zip,tar,txt,dtxt,error,log,out}