我可以从命令行运行带有一些参数的 python 脚本,一切正常。
我遇到的问题是我试图使用 bash 脚本多次运行此脚本(以及其他几个脚本),该脚本每次都从 CSV 文件中读取参数。参数包括“account”(域名)、“password1”和“password2”(可能包含特殊字符的密码)。
到目前为止,这是我的脚本:
#!/bin/bash
INPUT=accountlist.csv
OLDIFS=$IFS
IFS=,
[ ! -f $INPUT ] && { echo "$INPUT file not found"; exit 99; }
while read -r account $password1 $password2
do
/tmp/migration_imapcopy $account $password1 $password2
/tmp/migration_markmigrated $account
/tmp/migration_dnscheck abel $account
/tmp/migration_imapcopy $account $password1 $password2
done < $INPUT
IFS=$OLDIFS
我的问题是当我运行这个脚本时,各种 python 脚本(使用密码变量的脚本)的输出表明它们是登录问题,即密码变量不正确。
好像每次都没有正确提供参数。
任何人都可以解释一下吗?
最佳答案
while read -r account abelpass entapass
您正在阅读 abelpass
和 entapass
但传递了 password1
和 password2
!你不是打算用
while read -r account password1 password2
?
关于linux - 如何在从 csv 文件获取参数的 bash 脚本中运行命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17125328/