python - 在 csh 脚本中使用 $* 时如何防止删除引号
问题描述
我有一个 csh 脚本,它是将 python 脚本发送到网格引擎的包装器。只要我不使用包含引号的参数,就可以找到。
csh 'my.csh 脚本如下所示:
#!/bin/csh -f
<grid command> my_script.py $*
my_script.py 看起来像:
#!<path>/python3.6
from argparse import ArgumentParser
def setup_arg_parser():
parser = ArgumentParser()
parser.add_argument('-argument',help='Just an example.')
args = parser.parse_args()
return args
if __name__ == '__main__':
args = setup_arg_parser()
print (args)
当按如下方式调用 my.csh 时,它工作正常
%> my.csh -argument \"-anything -is -fine\"
但是当我这样做时,引号将被删除,python 参数解析器会报告错误。
%> my.csh -argument "-this -does_not -work"
有没有办法在不转义引号的情况下防止这种情况?我需要的是一种为下一个脚本提供引号的方法,这里是一个 python 脚本。
解决方案
推荐阅读
- string - 搜索字符串并删除其他所有内容并使用 Powershell 粘贴到新文件
- flutter - 设置 Getter 值,但仍然调用 Null Flutter
- rust - 使用自旋锁和lazy_static!在静态结构上
- python - 如何从不重复的列表中获取随机数?
- github - 检查套件完成后如何触发 Github Workflow?
- azure - ARM 模板更新覆盖 Azure 函数中的某些内容导致错误“函数运行时无法启动”
- c++ - 使用相同的着色器但没有相同的纹理或颜色绘制多个 VAO 的最佳方法是什么
- django - 如何在 ModelBackEnd 中检查 Django 中的非活动用户
- php - 如何将此json转换为数组。我想将我的视图的数据 [x] 显示为表格
- clang-format - 如何使用 clang-format 在 Kdevelop 中设置代码格式?