我正在运行以下脚本部分:
gpg -c --cipher-algo AES256 key
File `key.gpg' exists. Overwrite? (y/N) n
Enter new filename: filekey
如何从gpg进程捕获用户的输入(即“filekey”),以便我可以将其分配给脚本内的变量?
谢谢。
答案 0 :(得分:2)
在调用gpg
之前,您可以检查文件是否存在,并根据新变量读取文件名,然后调用gpg
。
#!/bin/bash
infile=${1:-key} # use argument as filename or `key` by default
filename="${infile}.gpg"
while [ -f "$filename" ]
do
echo -n "File $filename exists. Overwrite? (y/N)"
read option
case "$option" in
y|Y )
rm $filename
;;
* )
echo -n "Enter new filename:"
read filename
;;
esac
done
gpg -c --cipher-algo AES256 -o $filename $infile
这种方式gpg
永远不会在文件存在时提出问题。