shell Bash脚本在macos上不能很好地处理睫毛和空格[关闭]

mxg2im7a  于 2023-04-21  发布在  Shell
关注(0)|答案(1)|浏览(108)

已关闭,该问题需要details or clarity,目前不接受回答。
**想要改进此问题?**通过editing this post添加详细信息并澄清问题。

6天前关闭。
Improve this question
我在mac上执行大多数shell脚本时遇到了一些问题。例如,当我试图运行以下脚本调用sh script_name.sh时:

#!/bin/bash
set -e
flutter pub get

输出为:

: invalid optionline 2: set: -
set: usage: set [--abefhkmnptuvxBCHP] [-o option] [arg ...]

如果删除set -e行,输出将变为:

" for "flutter pub".command named "get

Did you mean one of these?
  get


Run 'flutter -h' (or 'flutter <command> -h') for available flutter commands and options.

以前有人经历过这样的事情吗?我很感激你能提供的任何帮助。

e1xvtsh3

e1xvtsh31#

正如@knittl和@rowboat所指出的,我忘记检查我的行是如何结束的。结果发现,我的VS代码在每次通过它保存脚本时都会添加/r/n。
查看are-shell-scripts-sensitive-to-encoding-and-line-endings了解更多信息。

相关问题