gpt4 book ai didi

linux - ^M char 在使用 echo | 时创建额外的新行邮件

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

我有一个看起来像这样的文件:

> cat my.txt
This is sentence 1.
This is sentence 2.
<empty line>
This is sentence 3.

在我的 bash 脚本中,当我添加尝试通过电子邮件发送文件时,会出现额外的一行。

#!/bin/bash
outf="/tmp/my.txt"
action=`cat $outf`
echo $action | mail -s "my test" emailid@mail.com

邮件是这样的:

This is sentence 1.
<empty line>
This is sentence 2.
<empty line>
<empty line>
This is sentence 3.
<empty line>

如何删除多余的空行?

最佳答案

在Unix中,存在字符音译工具'tr'

删除 CR=13(dec)=0D(hex)=15(oct):

tr -d '\015' < infile.txt > outfile.txt

删除 LF=NL=10(dec)=12(oct)

tr -d '\012' < infile.txt > outfile.txt

要删除两者:

tr -d '\015\012' < infile.txt > outfile.txt

不太确定这在 Linux 中是如何工作的但是:http://linux.about.com/library/cmd/blcmdl1_tr.htm

关于linux - ^M char 在使用 echo | 时创建额外的新行邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11773835/

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