Передача txt-файла в качестве аргумента скрипту во время работы

Может быть одна из пятнадцати миллиардов причин. Некоторые из них перечислены ниже:

  • Проблема с конфигурацией сети на рабочем столе. (Правильно ли вы настроили шлюз?)
  • Брандмауэр целевой системы настроен НЕ отвечать на эхо-запросы
  • Неисправный сетевой кабель, соединяющий вас с сетью
  • В вашей системе есть правила брандмауэра, блокирующие ответы ICMP от других хостов
  • Сеть конфигурации брандмауэра -Широкая фильтрация ICMP (Включает конфигурации коммутатора)

Проблема в том, что с только предоставленной информацией абсолютно невозможно провести какую-либо дальнейшую диагностику, что делает этот вопрос «слишком широким» (помеченным как таковой ).

-1
14.08.2019, 12:30
2 ответа

Обновлено на основе вашего обновленного вопроса

Чтобы прочитать базы данных из файла, который вы передаете в качестве аргумента, вы можете использовать

for File in $(< "$1"); do
    echo `date +'%m-%d-%Y %H:%M:%S'` "starting $File execute" > $Import_Success_Log
   ./cli.sh -a execute -i IPROD_$File -fn formrnt -user -password>> $Import_Success_Log
    echo `date +'%m-%d-%Y %H:%M:%S'` "$File execute completed" >> $Import_Success_Log
done

(и аналогично для всех остальных петель)

, а затем назовите его как

sh your-script file.txt

Скрипты можно вызывать с аргументами, они будут доступны в $1, $2и т.д. Так что в вашем случае вы можете сделать

File="$1"
echo `date +'%m-%d-%Y %H:%M:%S'` "starting $File execute" > $Import_Success_Log
./cli.sh -a execute -i "IPROD_$File" -fn formrnt -user -password>> $Import_Success_Log
echo `date +'%m-%d-%Y %H:%M:%S'` "$File execute completed" >> $Import_Success_Log
./cli.sh -authfile "$AuthFile" -a list -t area -nof > $Import_List_File

imp_area=`grep -iw "PRD_$File" "$IGC_Import_List_File" | grep -i prod`;

, а затем вызовите скрипт как

sh your-script filename

PS :Это предполагает, что в остальной части скрипта (, особенно в части, выполняемой перед вашим фрагментом ), значение $1не изменяется по какой-либо причине.

1
28.01.2020, 05:12

Если вы выполняете свой сценарий с параметрами, они автоматически сохраняются в переменных $1, $2, $3,...

Итак, если вы выполняете свой скрипт как:

sh script.sh abc.txt

тогда "abc.txt" сохраняется в переменной $1

-1
28.01.2020, 05:12

Теги

Похожие вопросы