Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用bash调用Go和Python脚本_Bash - Fatal编程技术网

使用bash调用Go和Python脚本

使用bash调用Go和Python脚本,bash,Bash,我想找到一种创建bash脚本(scripts.sh)的方法,它将在自身内部执行不同的Python和Go脚本 我想做的是这样的: #!/bin/bash URL="https://google.com" bash scripts.sh URL ./scripts.sh 这将把URL参数附加到bash脚本本身内部调用的所有脚本中 假设我有两个python脚本和两个Go脚本要在bash中调用,其中编码了相同的参数 python3 script1.py -u URL p

我想找到一种创建bash脚本(scripts.sh)的方法,它将在自身内部执行不同的Python和Go脚本

我想做的是这样的:

#!/bin/bash
URL="https://google.com"    
bash scripts.sh URL
./scripts.sh 
这将把URL参数附加到bash脚本本身内部调用的所有脚本中

假设我有两个python脚本和两个Go脚本要在bash中调用,其中编码了相同的参数

python3 script1.py -u URL
python3 script2.py -d URL
goscript -domain URL
goscript2 -d URL

关于如何实现这一点,你有什么想法吗?

你很接近了。使用URL变量调用其他命令。这样,在单个脚本中:

#!/bin/bash
URL="https://google.com"    

python3 script1.py -u $URL
python3 script2.py -d $URL
goscript -domain $URL
goscript2 -d $URL
要调用scripts.sh,您可以这样做:

#!/bin/bash
URL="https://google.com"    
bash scripts.sh URL
./scripts.sh 

如果希望使用包装器脚本定义URL值,则可以:

  • wrapper.sh

    #!/bin/bash
    URL="https://example.com"
    scripts.sh $URL
    
  • scripts.sh

    #!/bin/bash
    URL="$1"
    
    python3 script1.py -u $URL
    python3 script2.py -d $URL
    goscript -domain $URL
    goscript2 -d $URL
    

在此基础上添加一些验证(例如,参数的数量是确定的,URL是有效的URL格式,…)。我发布的内容是为了演示这个想法,而不是一个完整的“生产”脚本。

您能提供一些其他信息吗?您是否尝试在bash脚本中插入这4行?