我有一个想要运行的脚本,然后以特定格式将输出写入文件
当前,当我运行该脚本并将其定向到标准输出时,它会以我想要的格式提供给我。问题是,当我尝试将其发送到文件时,它会丢失格式,只是在同一行上为我提供文件中的输出
以下是我希望以这种特定方式写入文件的输出:
下面是当我将其写入文件时它实际提供的内容
这是我的代码
printf "%s\n" "==================" >> test
printf "%s\n" "Disk Space. Look for /" >> test
printf "%s\n" "==================" >> test
printf "%s\n" $(df | grep '/dev/') >> test
printf "%s\n" "==================" >> test
如何使文件中的输出看起来像命令行中的输出。
编辑:我通过 plink (putty 命令行)运行它,这些命令位于我正在使用的命令文件中。
答案1
从您的屏幕截图来看,您似乎正在 Windows 的记事本中查看该文件。它仅识别 Windows 风格的行结束符 (CR+LF),并在一行上显示具有 Unix 风格的行结束符的文件。
您可以更改\n
为\r\n
输出printf
Windows 样式的行结束符。
答案2
您可以通过运行文件unix2dos
(与 相反dos2unix
,但从相同的dos2unix-*
rpm 拉取),然后将文件发送到目的地。这应该可以让您的文件在 Windows 中正常运行。