[英]How to pass parameters from xargs to python script?
我的command.list
文件包含我的python脚本my_script.py
命令参数,其中包含3个参数。
其中一行如下所示:
<path1> <path2> -sc 4
看起来像这样不起作用,因为应该拆分参数?
cat command.list | xargs -I {} python3 my_script.py {}
如何将字符串拆分为参数并将其传递给python脚本?
不确定,您要使用xargs -I {} python3 my_script.py {}
什么。 但是你在找吗
$ cat file
<path1> <path2> -sc 4
....
<path1n> <path2n> -sc 4
$ while read -r path1 path2 unwanted unwanted; do python3 my_script.py "$path2" ; done<file
man xargs
的-I
的文档
-我替换-str
将初始参数中出现的replace-str替换为从标准输入中读取的名称。 同样, 未加引号的空格也不会终止输入项目。 相反,分隔符是换行符。 表示-x和-L 1。
你想要的是
xargs -L1 python3 my_script.py
顺便说一句: cat
是没有必要的。 使用以下命令之一
< command.list xargs -L1 python3 my_script.py
xargs -a command.list -L1 python3 my_script.py
那cat command.list | xargs -L 1 python3 my_script.py
cat command.list | xargs -L 1 python3 my_script.py
吗? 这将一次向脚本传递一行( -L 1
)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.