You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何向经openssl enc加密的bash脚本传递执行参数?

如何向加密后的Bash脚本传递参数?

你只需要把参数直接追加在管道后的sh -后面即可,具体命令如下:

openssl enc -d -aes-256-cbc -a -in testing -pass pass:<password> | sh - 1 a 23

关键说明:

  • 注意你之前的执行命令写错了加密/解密选项:加密用-e,解密要改用-d,否则无法正确还原脚本内容。
  • sh -中的-表示让bash从标准输入读取脚本代码,后面跟的所有内容都会作为位置参数(对应原脚本里的$1、$2、$3)传递给解密后的脚本,和直接执行sh test.sh 1 a 23的效果完全一致。

如果参数包含空格、引号等特殊字符,需要用引号包裹避免解析错误,比如参数中有带空格的内容:

openssl enc -d -aes-256-cbc -a -in testing -pass pass:<password> | sh - 1 "hello world" 23

内容的提问来源于stack exchange,提问作者Nikita

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 05:03:12