У меня есть два удаленных сервера. Тот, к которому я сейчас подключен, и тот, в который я пытаюсь скопировать много файлов (10.10.0.13)
У меня есть ряд файлов, которые мне нужно скопировать в различные каталоги формата:
/opt/DR/output/1/a/csva1file.csv
/opt/DR/output/1/a/csva2file.csv
/opt/DR/output/1/b/csvb1file.csv
/opt/DR/output/1/b/csvb2file.csv
/opt/DR/output/1/b/csvb3file.csv
/opt/DR/output/1/b/csvb4file.csv
/opt/DR/output/1/c/csvc1file.csv
...
/opt/DR/output/30/a/csva1file.csv
И это продолжается для вывода / 1 в / 40 папок. Все папки внутри идентичны, и все имена файлов внутри будут содержать одинаковые строки, только с небольшими различиями в зависимости от папки, в которой они находятся.
Я хочу скопировать все файлы, которые содержат «a1» из любого каталога в папку на удаленном сервере:
root@10.10.0.13:/data/landing/a/a1/
Точно так же я хочу сделать это для всех b1, c1, c2 et c. файлы и скопируйте их в соответствующие места на удаленном сервере.
Кажется, я не могу найти способ сделать это, не включая написание нескольких строк кода.
Я пробовал
cd /opt/DR/output/1/a/
scp -r -v *a1* root@10.10.0.13:/data/landing/a/a1/
, который работает, но я хочу скопировать ** ВСЕ * файлы CSV a1, а не делать их один за другим.
I смотрел в шумиху, но не думаю, что это может быть использовано для моего случая. Я также рассмотрел использование paramiko / glob для python, но я также не смог заставить его работать. В идеале я хотел бы сделать это с помощью сценария оболочки bash, но сценарий python также будет работать.
Надеюсь, это имеет смысл. Любая помощь будет принята с благодарностью. Я могу копировать через SFTP или SCP.