如何确定 shell 使用的 EOL 字符?

如何确定 shell 使用的 EOL 字符?

我正在编写一个要在 BusyBox 终端上运行的 shell (sh) 脚本。该脚本使用运算符将​​系统命令输出重定向到文件以进行日志记录>>。如何确定正在使用的行尾 (EOL) 字符,以便脚本可以准确计算预期的文件大小?预期的文件大小在我的应用程序中很重要,因为有严格的磁盘使用要求。

(我知道我可以在二进制编辑器中查看该文件,并准确查看它用于行尾的内容,但我的脚本需要可移植。因此,我需要对 EOL 字符有足够的信心)不会改变——例如操作系统定义——或者我需要能够捕获和计数。)

答案1

从您的问题来看,听起来您并不关心 EOL 字符实际上是什么,究竟如何许多字节或字符停产需要。

测量一下怎么样?

EOL_BYTES="$(echo | wc --bytes)"

或者

EOL_CHARS="$(echo | wc --chars)"

在脚本顶部运行其中之一,然后在计算中使用该值。

相关内容