如何在linux命令中从文本文件传递参数

时间:2018-09-28 03:30:46

标签: python linux bash scripting

这是我的命令

aws elb describe-tags --profile dev --load-balancer-name ELBNAME |grep -Pwo "Product\K\b.*|Environment\K.*|TAGDESCRIPTIONS\K.*" | xargs

我不是传递 ELBNAME ,而是传递逐行包含多个ELBNAME的文本文件

我希望此命令应一一处理所有ELBNAME,并且输出也应一行一行。

1 个答案:

答案 0 :(得分:1)

我为您创建了一个小脚本,它将起作用。希望您的文本文件中ELB列表之间用空格或换行符隔开。

#!/bin/bash
elb_name=($(cat test.txt))
for (( k = 0; k < ${#elb_name[@]}; k++ ))
do
echo -e "Describing tags for ELB - ${elb_name[k]} \n";
aws elb describe-tags --profile dev --load-balancer-name ${elb_name[k]} | grep  -Pwo "Product\K\b.*|Environment\K.*|TAGDESCRIPTIONS\K.*" | xargs
echo -e "End of describing tags for ELB - ${elb_name[k]} \n";
done