我正在创建一个新脚本。我想实现一种方法来验证这个脚本。所以我使用这些命令来检查文件的内容。
remote_file="$(curl -m2 -s "$1")"
checksum_remote="$(echo "$remote_file" | sha256sum | cut -d ' ' -f1)"
checksum_current="$(sha256sum < "$COMMAND_NAME" | cut -d ' ' -f1)"
但经过进一步的开发,我意识到我可以将我的脚本与命令一起使用curl -s $SCRIPT_URL | bash
。在这种情况下,我的检查[ "$checksum_remote" != "$checksum_current" ]
总是成功$COMMAND_NAME
,bash
而不是脚本的内容。
有谁知道当我们使用管道执行时如何使用 bash 脚本本身检索整个源代码?