我正在尝试编写一个简单的脚本来编译我的Java代码。 当我放
javac Main.java
在我的compile.sh中执行
bash compile.sh
我得到error: invalid flag: Main.java
但是,如果我只是简单地使用命令javac Main.java
,那么一切都会很好。
我在Win10上使用Ubuntu VirtualBox。 如何使脚本正常工作?
答案 0 :(得分:2)
这是您遇到的问题:
$ cat compile.sh
javac Main.java
$ bash compile.sh
javac: invalid flag: Main.java
Usage: javac <options> <source files>
use -help for a list of possible options
发生这种情况是因为脚本使用DOS样式行结尾:
$ cat -v compile.sh
javac Main.java^M
您可以通过设置编辑器以使用Unix行终止符或其他方式保存它来修复它。 tr
:
$ tr -d '\r' < compile.sh > fixed.sh
(no output)
$ cat -v fixed.sh
javac Main.java
它现在可以按预期工作:
$ bash fixed.sh
(no output)