Cygwin:为什么我们需要“export SHELLOPTS; set -o igncr”

Hal*_*rld 3 cygwin

当我早些时候尝试运行 shell 脚本时,它说文件结束错误。但运行以下两个命令后,它开始正常运行。

export SHELLOPTS 
set -o igncr
Run Code Online (Sandbox Code Playgroud)

请解释这背后的原因是什么。

cho*_*oba 6

set -o igncr导致 shell 忽略 Windows 行结尾(跳过\r)。另一种解决方案是通过运行dos2unix脚本来修复脚本。