Описание тега rotterdam
У меня ниже скрипт, который я пытаюсь скопировать 5 файлов параллельно. Я бегу мой ниже скрипт на мачинеа
, который пытается скопировать файл из machineB и machineC.
Если файл не существует в machineB
, то он должен быть там в machineC
точно.
Я с помощью GNU параллельно здесь, чтобы скачать пять файлов параллельно.
#!/бин/Баш
только для чтения основной=/tech01/первичные
как readonly FILERS_LOCATION=(machineC machineB)
MEMORY_MAPPED_LOCATION только для чтения=/techbat/данные/be_t1_snapshot
PRIMARY_PARTITION=(550 274 2 546 278 6 558 282 10 554 286 14) # это будет иметь больше чисел файл
из dir1=/techbat/данные/be_t1_snapshot/20140501
найти "$первички" -mindepth 1 -удалить
do_copy() {
Эль=$1
ControlPath УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 Давид@${FILERS_LOCATION[0]}:$dir1 и/t1_weekly_1680_"$Эль"_200003_5.данные $начального/. ControlPath || УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 Давид@${FILERS_LOCATION[1]}:$dir1 и/t1_weekly_1680_"$Эль"_200003_5.данные $начального/.
}
экспортно-Ф do_copy
параллельно -Джей 5 do_copy ::: "${PRIMARY_PARTITION[@]}"
Постановка Задачи:-
Проблема я столкнулся с выше сценарий - это не в состоянии распознать ${FILERS_LOCATION[0]}
, ${FILERS_LOCATION[1]}
, $dir1 и
и $начального
внутри do_copy
способ? И я не уверен, почему?
Если я пытаюсь распечатать такой внутри do_copy
способ ничего не печатается?
Эхо ${FILERS_LOCATION[0]}
Эхо ${FILERS_LOCATION[1]}
Но если я распечатать то же самое чуть выше do_copy
метод, то он работает нормально?
Ничего я здесь не хватает?
Обновления:-
Ниже приведен код я использую -
#!/бин/Баш
экспорт первичного=/tech01/первичные
экспорт FILERS_LOCATION=(machineC machineB)
экспорт MEMORY_MAPPED_LOCATION=/techbat/данные/be_t1_snapshot
PRIMARY_PARTITION=(0 548 272 4 544 276 8 556 280)
экспорт из dir1=/techbat/данные/be_t1_snapshot/20140501
найти "$первички" -mindepth 1 -удалить
do_copy() {
Эль=$1
ControlPath УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 Давид@${FILERS_LOCATION[0]}:$dir1 и/t1_weekly_1680_"$Эль"_200003_5.данные $начального/. ControlPath || УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 Давид@${FILERS_LOCATION[1]}:$dir1 и/t1_weekly_1680_"$Эль"_200003_5.данные $начального/.
}
экспортно-Ф do_copy
параллельно -Джей 8 do_copy ::: "${PRIMARY_PARTITION[@]}"
Очередное Обновление:-
Вот что я получил после выполнения указанных ниже сценария
#!/бин/Баш
экспорт первичного=/tech01/первичные
экспорт FILERS_LOCATION=(slc4b03c-407d.stratus.slc.ebay.com chd1b02c-0db8.stratus.phx.ebay.com)
экспорт MEMORY_MAPPED_LOCATION=/techbat/данные/be_t1_snapshot
PRIMARY_PARTITION=(0 548 272 4 544)
экспорт из dir1=/techbat/данные/be_t1_snapshot/20140501
найти "$первички" -mindepth 1 -удалить
Эхо ${FILERS_LOCATION[0]}
Эхо ${FILERS_LOCATION[1]}
do_copy() {
Эль=$1
ControlPath Эхо "УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 яблочко@${FILERS_LOCATION[0]}:$dir1 и/t1_weekly_1680_"$Эль"_200003_5.данные $начального/. ControlPath || УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 яблочко@${FILERS_LOCATION[1]}:$dir1 и/t1_weekly_1680_"$Эль"_200003_5.данные $начального/."
}
экспортно-Ф do_copy
параллельно -Джей 3 do_copy ::: "${PRIMARY_PARTITION[@]}"
Выход у меня -
david@tvxdbx1143:/home/david$ ./scp_files5.sh
machineB
machineC
При использовании программ, которые используют GNU параллельно обрабатывать данные для публикации, пожалуйста, привожу:
О. Танге (2011): ГНУ параллельно - инструмент командной линии электропередач,
;логин: журнал по USENIX, февраль 2011:42-47.
Это помогает финансировать дальнейшее развитие; и это не будет стоить вам ни цента.
В тишине параллельно это извещение цитирование работать '--как раз или использовать '--не-замечаем.
ControlPath УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 david@:/techbat/data/be_t1_snapshot/20140501/t1_weekly_1680_0_200003_5.data /tech01/первичный/. ControlPath || УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 david@:/techbat/data/be_t1_snapshot/20140501/t1_weekly_1680_0_200003_5.data /tech01/первичный/.
ControlPath УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 david@:/techbat/data/be_t1_snapshot/20140501/t1_weekly_1680_548_200003_5.data /tech01/первичный/. ControlPath || УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 david@:/techbat/data/be_t1_snapshot/20140501/t1_weekly_1680_548_200003_5.data /tech01/первичный/.
ControlPath УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 david@:/techbat/data/be_t1_snapshot/20140501/t1_weekly_1680_272_200003_5.data /tech01/первичный/. ControlPath || УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 david@:/techbat/data/be_t1_snapshot/20140501/t1_weekly_1680_272_200003_5.data /tech01/первичный/.
ControlPath УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 david@:/techbat/data/be_t1_snapshot/20140501/t1_weekly_1680_4_200003_5.data /tech01/первичный/. ControlPath || УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 david@:/techbat/data/be_t1_snapshot/20140501/t1_weekly_1680_4_200003_5.data /tech01/первичный/.
ControlPath УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 david@:/techbat/data/be_t1_snapshot/20140501/t1_weekly_1680_544_200003_5.data /tech01/первичный/. ControlPath || УПП -о ControlMaster=авто -о'=~/.ssh/control-%r@%h:%p-о ControlPersist=900 david@:/techbat/data/be_t1_snapshot/20140501/t1_weekly_1680_544_200003_5.data /tech01/первичный/.