自动编写对已从标准读取的程序的响应脚本

自动编写对已从标准读取的程序的响应脚本

我正在尝试编写对 scrypt(一个命令行加密程序)的调用脚本。我可以这样称呼它

cat ./mysuperescrettextfile.txt | scrypt enc -

破折号使其从标准输入中读取数据以进行加密。但随后它会两次提示密码进行加密。我想传递密码并使用“-P”标志。手册页将 -P 标志描述为:

If -P is given, then scrypt does not print any prompts, and reads a passphrase 
from stdin.

是否有可能以一种让 scrypt 区分要加密的数据和密码的方式将数据发送到标准?通常手册页会列出互斥的选项,但这并没有将 - 和 -P 列为互斥的,这给了我一点希望,我可以做到这一点。

答案1

您应该能够将该文件放在您现在放置的命令行上-

cat ./passphrase | scrypt enc mysuperescrettextfile.txt 

来自手册页

NAME
     scrypt — encrypt and decrypt files.

SYNOPSIS
     scrypt {enc | dec} [-M maxmem] [-m maxmemfrac] [-t maxtime] infile
            [outfile]

DESCRIPTION
     scrypt enc encrypts infile and writes the result to outfile if specified,
     or the standard output otherwise.  The user will be prompted to enter a
     passphrase (twice) to be used to generate a derived encryption key.

相关内容