Наивный подход Unix:
awk '/Order|Package/' conf/*.conf | # get your usual output
paste - - | # convert two lines to one
sort -n -k2,2 | # sort numerically
awk '{print $1,$2;print $3,$4}' # re-print in two columns
Теоретически возможно при использовании переключателя-S
с конструкцией вида:
scp -S "script.sh" /local/file userA@example.com:/remote/file
Там, где script.sh
выполняет ssh
, будут все аргументы, которые он получает, за исключением префикса scp
с sudo
. И это сработает только в том случае, если вы убедитесь, что sudo
не запрашивает пароль. Что на самом деле является частью моего текущего нерешенного вопроса о Super User:
Разрешено автоматическое выполнение команд от имени пользователя root в Linux с использованием SSH .
Другой вариант, если у вас есть локальные подключения к хосту, разрешенные для «пользователя B» на удаленном сервере, вы можете использовать-J
(переход )переключатель (, поддерживаемый начиная с OpenSSH 8.0 ), например:
scp -J userA@example.com /local/file userB@localhost:/remote/file
В более старых версиях (, но не ниже 7.3 )вы можете использовать директивуProxyJump
:
scp -o ProxyJump=userA@example.com /local/file userB@localhost:/remote/file
Существуют и другие параметры, такие как ProxyCommand
или переадресация портов, которые вы можете использовать даже в более старых версиях OpenSSH. Они описаны в Поддерживает ли OpenSSH вход в систему с несколькими переходами? .