如何使用多个参数在bash中printf?

Jim*_*mes 9 bash printf

如何在bash中使用printf打印格式化的系统日期+主机名.

有点像printf "%s:%s\n" date hostname

jim*_*ara 16

printf "%s:%s\n" "$(date)" "$(hostname)"
Run Code Online (Sandbox Code Playgroud)

  • 为什么不简单地依赖于bash的`printf(1)`的_built-in_实现的日期格式,而不是调用带有日期的子shell?例如:`printf'%(%a%b%d%T%Z%Y)T:%s \n'-1 $(主机名)` (4认同)
  • @devnull:这可能有问题."`printf`解释格式字符串中的转义序列和格式说明符.如果包含变量,当您最有可能将数据视为数据时,数据中的任何转义序列或格式说明符也将被解释." 来自https://github.com/koalaman/shellcheck/wiki/SC2059 (3认同)
  • 或者更简洁,因此:`printf "$(date):$(hostname)\n"` (2认同)