gpt4 book ai didi

bash - 校验和并同时通过管道输入

转载 作者:行者123 更新时间:2023-11-29 09:26:48 24 4
gpt4 key购买 nike

我想将一个大文件从一台计算机安全地移动到另一台计算机,在存储之前必须在另一台计算机上对其进行处理。

我想将文件通过管道传输到运行处理脚本的 ssh。

local.example.com$ cat file | ssh remote.example.com process.sh

(如果你有比我更好的想法,请提出建议)

在处理脚本中,我想在保存文件之前对文件进行校验和加密。问题来了。

解决方案可能有两种:

  • 管道输入到两个命令(cksum 和 openssl);但是我发现的所有方法看起来都很复杂并且不是可选的。
  • hack cksum 也可以做类似猫的工作并在 stderr 上打印结果,这样我就可以做

    cksum --pipe | openssl enc > myfile

    并通过 stderr 取回校验和。不幸的是,我查看了代码,我似乎很难在不造成一些性能/缓冲损坏的情况下做到这一点;)

可能有一个 cksumming 传输工具可以完成这一切,但我没有想到。无论如何,我想避免非标准和复杂的东西。

非常感谢。

编辑:关于答案的有用链接 http://www.linuxjournal.com/content/shell-process-redirection

最佳答案

如果您使用 cat > inputfile 开始您的接收脚本,它将吃掉所有 STDIN 直到 EOF,然后您的脚本可以运行输入文件所需的任何操作。

你也可以使用tee;

echo foo | tee >(sha1sum) >(md5sum)
d3b07384d113edec49eaa6238ad5ff00 -
f1d2d2f924e986ac86fdf7b36c94bcdf32beec15 -

关于bash - 校验和并同时通过管道输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5966907/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com