以下のシェル スクリプトを実行すると、入力しているパスワード ファイルが無視されるようです。私は絶えずそれを求められています。入力すると、スクリプトの残りの部分は問題なく実行されますが、cron 経由で実行しているため、ファイルから読み取る必要があります... 何か提案はありますか?
#!/bin/sh
p=$(<password.txt)
set -- $p
pass_phrase=$1
destination="/var/www/d"
cd /var/sl/
for FILE in *.pgp;
do
FILENAME=${FILE%.pgp}
gpg --passphrase "$pass_phrase" --output "$destination/$FILENAME" --decrypt "$FILE"
rm -f $FILE
done