У меня есть программа на удаленном хосте, выполнение которой мне нужно автоматизировать. Команда выполнения этой программы на той же машине выглядит примерно так:
/path/to/program -a file1.txt -b file2.txt
В этом случае file1.txtи file2.txtиспользуются для совершенно разных вещей внутри программы, поэтому я не могу просто catих объединить. Тем не менее, в моем случае, file1.txtи file2.txtчто я хочу передать в программу существует только на устройстве, а не на машине , где мне нужно , чтобы выполнить программу. Я знаю, что могу передать как минимум один файл через SSH, передав его через stdin:
cat file1.txt | ssh host.name /path/to/program -a /dev/stdin -b file2.txt
но, поскольку мне не разрешено хранить файлы на хосте, мне также нужен способ получить доступ к file2.txtнему. Я думаю, что это могло бы быть возможно через злоупотребление переменными среды и творческое использование catи sedвместе, но я не знаю инструменты достаточно хорошо, чтобы понять, как я использовал бы их, чтобы достигнуть этого. Это выполнимо и как?
catиsedне являются решением здесь.