传递给我的 java 程序的参数之一是这样的,ab|cd
. 最初,当我像这样运行java程序时,
$ java 类名 ab|cd
它失败了,因为|
在 linux shell 中被解释为管道符号。所以只有ab
传入java程序。所以我做了第二次尝试:
$ java 类名 "ab|cd"
这一次,"ab|cd"
是传入的,但该值包含双引号。该程序真正打算拥有的是ab|cd
. 如何在没有引号的情况下传递正确的值?
传递给我的 java 程序的参数之一是这样的,ab|cd
. 最初,当我像这样运行java程序时,
$ java 类名 ab|cd
它失败了,因为|
在 linux shell 中被解释为管道符号。所以只有ab
传入java程序。所以我做了第二次尝试:
$ java 类名 "ab|cd"
这一次,"ab|cd"
是传入的,但该值包含双引号。该程序真正打算拥有的是ab|cd
. 如何在没有引号的情况下传递正确的值?
在命令 shell 中,您可以使用 '\' 字符转义字符。
java className ab\|cd
尝试(对于 Linux):
$ java className ab\|cd
对于 Windows:
java className ab^|cd
尝试这个,
"\" is used inorder to nullify the effect of the characters which have special meanings.
java className ab\|cd
您可以像以下代码一样使用转义字符:
$ java className ab\|cd
也许试试这个:
arg="ab|cd"
java className $arg