手动运行以下命令效果很好
/jrr/bin/java -Xms14M -Xm14M -Dhttps.protocols=Tv1.2 -Dk.ts.client.protocols=TLSv.2 -jar /gq1/ust/classes/S.jar $(< /pass.txt)
但 shell 失败,无法读取“(< /pass.txt)”:没有这样的变量
!/usr/bin/期望
生成 ssh[电子邮件受保护]“/jrr/bin/java -Xms14M -Xm14M -Dhttps.protocols=Tv1.2 -Dk.ts.client.protocols=TLSv.2 -jar /gq1/ust/classes/S.jar $(< /pass.txt );cd /gucq1/gcust;mail -s '你好'[电子邮件受保护]<logs.txt”期望“密码”发送“N0\r”交互期望eof。
答案1
尝试
command $(< abc.txt)
在哪里
$(< )
构造将读取文件,去除行尾并在命令行中替换
更多信息请参见 Bash 手册,章节命令替换:
Bash 通过执行来执行扩展命令并将命令替换替换为命令的标准输出,并删除所有尾随换行符。嵌入的换行符不会被删除,但它们可能会在分词过程中被删除。命令替换可以替换为等效但更快的命令。
$(cat file)
$(< file)