Linux echo,然后运行命令

Linux echo,然后运行命令,linux,bash,Linux,Bash,我希望此命令在一行中运行 echo The current version MD5: md5sum xxx.jar echo The new version MD5: md5sum zzz.jar 我希望结果是: >当前版本的MD5:2791f2d6e9ac9e6a6a08919f031b2633 >新版本的MD5:2791f2d6e9ac9e6a6a08919f03000000 问题是如何运行它们,以便它们在一行中打印出来。您可以使用命令替换: echo The current versio

我希望此命令在一行中运行

echo The current version MD5: md5sum xxx.jar
echo The new version MD5: md5sum zzz.jar
我希望结果是:

>当前版本的MD5:2791f2d6e9ac9e6a6a08919f031b2633

>新版本的MD5:2791f2d6e9ac9e6a6a08919f03000000


问题是如何运行它们,以便它们在一行中打印出来。您可以使用命令替换:

echo The current version MD5: md5sum xxx.jar
echo The new version MD5: md5sum zzz.jar
echo "The .... MD5: $(md5sum xxx.jar)"


编辑

如果xxx.jar文件不存在,则输出如下:

md5sum: xxx.jar: No such file or directory
The current version MD5:
但您可以使用bash函数打印md5或错误

#!/bin/bash

print_md5() {
    local MSG=$1
    local FILE=$2
    local MD5
    MD5=($(md5sum $FILE 2>&1))
    # MD5 is an array, [0] contains the md5, [1] contains "file"
    if [ $? -ne 0 ]; then
        echo "MD5 error '$FILE'"
    else
        echo "$MSG: ${MD5[0]}"
    fi
}

print_md5 "The current version MD5" xxx.jar
print_md5 "The new version MD5" zzz.jar
示例:(如果zzz.jar不存在)


您可以使用命令替换:

echo "The .... MD5: $(md5sum xxx.jar)"


编辑

如果xxx.jar文件不存在,则输出如下:

md5sum: xxx.jar: No such file or directory
The current version MD5:
但您可以使用bash函数打印md5或错误

#!/bin/bash

print_md5() {
    local MSG=$1
    local FILE=$2
    local MD5
    MD5=($(md5sum $FILE 2>&1))
    # MD5 is an array, [0] contains the md5, [1] contains "file"
    if [ $? -ne 0 ]; then
        echo "MD5 error '$FILE'"
    else
        echo "$MSG: ${MD5[0]}"
    fi
}

print_md5 "The current version MD5" xxx.jar
print_md5 "The new version MD5" zzz.jar
示例:(如果zzz.jar不存在)


您需要从md5sum的输出中解析出MD5,因此:

echo "The current version MD5:`md5sum xxx.jar | awk '{ print $1}'`"
如果你不喜欢许多有趣的引语,也可以使用括号:

echo "The current version MD5:$(md5sum xxx.jar | awk '{ print $1}')"

您需要从md5sum的输出中解析出MD5,因此:

echo "The current version MD5:`md5sum xxx.jar | awk '{ print $1}'`"
如果你不喜欢许多有趣的引语,也可以使用括号:

echo "The current version MD5:$(md5sum xxx.jar | awk '{ print $1}')"