如何使用echo打印命令的结果?

Dio*_*iva 8 bash echo

我想知道如何打印我的全名:

awk -F: '($1==U){print $5}' U=$LOGNAME /etc/passwd
Run Code Online (Sandbox Code Playgroud)

例如,但是在echo命令中有一些单词:

例如:

你好Diogo Saraiva,很高兴再次见到你

Diogo Saraiva是我在Ubuntu记录中的全名.
我尝试了一些东西,但没有完成那个剧本......

其他的事情:为什么当我发布时awk -F: '($1==U){print $5}' U=$LOGNAME /etc/passwd显示Diogo Saraiva,,,而不是Diogo Saraiva?这也发生在:

grep $USER /etc/passwd | awk 'BEGIN { FS=":" } { print $5 }'
Run Code Online (Sandbox Code Playgroud)

我需要的脚本是使用命令声明变量"like",然后在我的脚本中不同时间回显该变量"like".

Eta*_*ner 14

要输出所需的字符串,可以使用此命令.

awk -F: -v U="$LOGNAME" '$1==U{print "Hello " $5 ", happy to see you again"}' /etc/passwd
Run Code Online (Sandbox Code Playgroud)

如果awk -F: -v U="$LOGNAME" '$1==U{print $5}' /etc/passwd正在输出Diogo Saraiva,,,那么那就是您的/etc/passwd文件中该字段的内容.

要保存变量中命令的输出,只需使用:

var=$(command)
Run Code Online (Sandbox Code Playgroud)

并记得在使用它时引用变量:

echo "Hello $var, happy to see you again"
Run Code Online (Sandbox Code Playgroud)

  • 回声 $(ls /home/xx) (17认同)