gpt4 book ai didi

linux - 脚本 (bash) 的乱码输出

转载 作者:太空宇宙 更新时间:2023-11-04 10:21:24 25 4
gpt4 key购买 nike

今天我在我的一个脚本中发现了一个奇怪的错误。首先是一些背景。该脚本按顺序运行一堆命令并创建一个 HTML 模板,然后发送。现在这个特定的模板被打乱了,我不明白为什么。这是一个示例:

//错了。看到第二行被截断了。字符串应该是“Affected CI Serial Number”。另外邮件应该以“Dear Team”开头,而且不在应该的位置是。

Affected CI Name: <name>

cted CI Serial Number: <SN>

Dear Team,

脚本中没有任何地方我在后台运行了一些东西。一切都应该按顺序运行:

echo "<b>" Affected CI Name: "</b>" $(grep $sn $FPATH/arraylist.txt|awk '{print $2}')"<br>" >> $FPATH/mail
echo "<b>" Affected CI Serial Number: "</b>" $(grep $sn $FPATH/arraylist.txt|awk '{print $1}') "<br>" >> $FPATH/mail

我认为这个问题不会重现。我的问题只是这样的事情怎么会发生?到目前为止一切都运行正确。我是否遗漏了一些关于输出重定向的信息?据我所知,每个命令都应等待前一个命令的返回码,然后再继续下一个命令。

//Linux版本

2.6.26-2-amd64 #1 SMP Sun Mar 4 21:48:06 UTC 2012 x86_64 GNU/Linux

最佳答案

试试看是否有帮助:

execute_commands()
{
echo "<b>" Affected CI Name: "</b>" $(grep $sn $FPATH/arraylist.txt|awk '{print $2}')"<br>"
echo "<b>" Affected CI Serial Number: "</b>" $(grep $sn $FPATH/arraylist.txt|awk '{print $1}') "<br>"
}

execute_commands >> $FPATH/mail

我已经复制/粘贴了您的命令,假设它们有效。不同之处在于,一切都只通过一次重定向进行处理,希望这样可以避免任何可能影响您所看到的行为的缓冲问题。

关于linux - 脚本 (bash) 的乱码输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43716705/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com