【发布时间】:2021-09-23 14:57:53
【问题描述】:
我正在尝试创建一个 shell 脚本,该脚本读取一个带有 python 脚本参数的文件,该 shell 脚本应该在循环中执行:
#!/bin/bash
while read -r i ; do python catfisher.py $i ; done < fishes
“鱼”可能包含的位置:
vesper "purplish green" fender
vespa "dimmer grey" "stradivarius veil"
问题在于 python 脚本的 argparser 会这样解释参数:
python purplish green fender
即使在 bash 脚本输出中回显 $1 时:
vesper "purplish green" fender
如果手动运行 python 脚本很好:
python catfisher.py "purplish green" fender
所以我假设罪魁祸首是我缺乏 bash 脚本技能,而不是我缺乏 argparser 技能,但如果我弄错了请指教。
【问题讨论】:
-
你能用 zsh 代替 bash 吗?
-
@tripleee This question 是更好的副本;您使用的那个并不真正相关。
-
@Shawn 很好,谢谢;已更新。
标签: python bash parameters whitespace