我正在使用getopt来解析选项和参数。 我写了一个批处理文件来调用python脚本,所以我不必一遍又一遍地输入相同的命令。
当我打印出参数列表时,路径在空格上分开,每个都被单独解析。
路径用双引号括起来,但我不确定是什么问题。它是批处理文件,还是getopt不将其视为一个字符串?
如果是这样,我可以使用哪些替代方法来正确解析选项和参数(尤其是带空格的路径)?
编辑:nvm,发现了问题。我在批处理文件中的循环变量周围放了双引号(即:“%% X”)。它已经有双引号,所以当我把自己的双引号时,路径本身不再是单个字符串=(答案 0 :(得分:1)
我们需要确定代码是确定的,但请确保引用无处不在这个参数,不仅仅是在命令行上。
命令行......
$script.sh "/my/path with/spaces"
Bash Script ...
#!/bin/bash
python /path/to/script "$1"