如何将脚本参数传递给管道参数?

如何将脚本参数传递给管道参数?

我有以下代码,我希望参数-s包含 bash 脚本的第一个参数。目前,它为主题逐字打印“$1”,尽管消息正文已在语句$1中正确评估echo

echo "Converse Log Labels $1" | mailx -a conversation_logs_"$1".tsv -s "Converse Logs Labels Data "$1"" [email protected]

答案1

看起来您在之前关闭了报价,$1然后在之后打开并关闭了一组新报价。你可以尝试:

echo "Converse Log Labels $1" | mailx -a conversation_logs_"$1".tsv -s "Converse Logs Labels Data $1" [email protected]

或者如果您想要包含引号:

echo "Converse Log Labels $1" | mailx -a conversation_logs_"$1".tsv -s "Converse Logs Labels Data \"$1\"" [email protected]

相关内容