Из командной строки я могу запустить скрипт python с некоторыми аргументами, и все хорошо.Как запустить команду в скрипте bash, который получает свои аргументы из файла csv
Проблема у меня есть, я пытаюсь запустить этот скрипт (несколько других) много раз, используя скрипт bash, который каждый раз считывает аргументы из файла CSV. Аргументы включают «учетную запись», которая является доменным именем «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 (те, которые используют переменные пароля) позволяет предположить, что их проблема входа в систему, т.е. переменные пароля неверны.
Это почти так, как будто аргументы не подаются правильно каждый раз.
Может ли кто-нибудь пролить свет?
Цитата переменных: '' $ account "' – Kevin
вы используете 'abelpass' и' entapass' в 'read', но' $ password1' и '$ password2' в теле цикла while. Эти опечатки, или они на самом деле находятся в вашем скрипте? – doubleDown