我如何修改这个 bash 脚本来输出到特定的文件夹?

我如何修改这个 bash 脚本来输出到特定的文件夹?

我正在修改一个脚本,该脚本使用 gpg 加密文件夹中的所有文件。目前,它将修改后的文件输出到输入文件所在的同一文件夹中。但是,我想输出到我在脚本中定义的另一个目录。我尝试更改脚本中的输出参数,但尚未找到确切的语法。这里有没有 bash 用户知道语法应该是什么?

维萨

#!/bin/bash

# This uses gpg to encrypt every file in a directory as separate
# encrypted files

# Usage
# ./encrypt-all.sh ./dir-of-files-to-encrypt "PASSPHRASE"

FILES="$1"
PASSPHRASE="$2"

pushd $FILES

for file_name in ./*; do
enc_name="$file_name.enc"

echo "Encrypting $file_name"

gpg \
--passphrase "$PASSPHRASE" \
--batch \
--output "$file_name.enc" \
--symmetric \
--cipher-algo AES256 \
"$file_name"

echo "Done! Output: $enc_name"
done

popd

答案1

FILES="$1"
PASSPHRASE="$2"
OUTPUTPATH="/path/to/output/directory"

pushd $FILES

for file_name in ./*; do
    enc_name="$file_name.enc"

    echo "Encrypting $file_name"

    gpg \
    --passphrase "$PASSPHRASE" \
    --batch \
    --output "$OUTPUTPATH/$file_name.enc" \
    --symmetric \
    --cipher-algo AES256 \
    "$file_name"

    echo "Done! Output: $enc_name"
done

popd

相关内容