Ubuntu Sed Md5Sum命令

Ubuntu Sed Md5Sum命令,ubuntu,sed,command-line,md5sum,Ubuntu,Sed,Command Line,Md5sum,我试图编写一个脚本,用jar文件的md5更新一个文件 要获取md5,我可以执行以下命令: md5sum target/file1.jar | awk '{print $1;'} sed -i 's/${md5}/md5Output/g' File2.json 这将打印文件的md5。要使用sed替换文本${md5},我可以执行以下命令: md5sum target/file1.jar | awk '{print $1;'} sed -i 's/${md5}/md5Output/g' F

我试图编写一个脚本,用jar文件的md5更新一个文件

要获取md5,我可以执行以下命令:

 md5sum target/file1.jar | awk '{print $1;'}
sed -i 's/${md5}/md5Output/g' File2.json 
这将打印文件的md5。要使用sed替换文本${md5},我可以执行以下命令:

 md5sum target/file1.jar | awk '{print $1;'}
sed -i 's/${md5}/md5Output/g' File2.json 
我想用第一个命令的内容替换md5Output


这可能吗?基本上,目标是计算“File1”的md5,并将md5值放入“File2”

@Cyrus感谢您的参考!以下是所有需要做同样事情的人的完整答案

 #!/bin/sh

 VARIABLE=$(md5sum target/file1.jar | awk '{print $1;}')
 sed -i "s|\${md5}|$VARIABLE|g" file2.json
Sed一号班轮:

$ sed -i  "s/\${md5}/$( md5sum target/file1.jar | awk '{print $1}' )/g" File2.json

您是否尝试过将第一个命令的结果存储在变量中?@StephenNewell我尝试过在第一个命令中使用“>>variable”,并在sed中使用variable,但它是作为文本字符串打印的,而不是作为变量的值打印的:(请参阅和注意:awk命令中的结束单引号应该在花括号之外。请参阅: