繁体   English   中英

如何将参数从xargs传递到python脚本?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM