如何从Unix到Windows实现相同的可读性

问题描述 投票:0回答:1

在UNIX中具有某些文件的任何目录中,请提供以下命令

ls -lrt | awk '{printf "%-55s%-5s%-5s%-10s%-15s\n", $9,$6,$7,$8,$5}'

您看到的输出将看起来很格式化或易于阅读/理解

我将此命令输出捕获到文件中,并以电子邮件形式发送。

ls -lrt | awk '{printf "%-55s%-5s%-5s%-10s%-15s\n", $9,$6,$7,$8,$5}' > $TMP_DIR/test.dat
mail -s "FILES CHECK " [email protected] < $TMP_DIR/test.dat

但是在电子邮件中,缺少在UNIX中看到的顺序。那些具有较大文件名的文件和具有较小文件名的文件的组合使外观混乱。请让我知道如何在Windows中也实现相同的可读性。

linux unix awk printf solaris
1个回答
2
投票

假设文件的内容看起来像您想要的那样,问题在于您的电子邮件查看应用程序如何显示消息。具体来说,许多电子邮件客户端将使用“ HTML”规则呈现“纯文本”消息,该规则将多个空格折叠为一个空格,或者使用可变宽度字体而不是您在终端中习惯的固定宽度字体。您可以通过在电子邮件中编写HTML标签来克服其中的一些问题:

echo '<html><body><pre>' > $TMP_DIR/test.dat
ls -lrt | awk '...' >> $TMP_DIR/test.dat
echo '</pre></body></html>' >> $TMP_DIR/test.dat
mail -a "Content-type: text/html" -s "FILES CHECK " [email protected] < $TMP_DIR/test.dat

现在,由于有了“ pre”格式标签,您的消息可以以固定宽度的字体以所需的方式(在具有HTML功能的应用程序中呈现)。

您还可以使用“富文本” MIME类型发送消息,并将内容包含在<fixed></fixed>标签中。

© www.soinside.com 2019 - 2024. All rights reserved.