Неоднозначное перенаправление при выполнении команды через ssh

Сrsync:

rsync --archive --ignore-existing source_dir/ target_dir/

Это скопирует иерархию source_dirв target_dir, но не перезапишет уже существующие файлы в target_dir.

0
20.07.2019, 10:42
1 ответ

Как упоминалось в комментариях , оболочка входа удаленного пользователя — cshили tcsh. Синтаксис этих оболочек сильно отличается от синтаксиса различных оболочек POSIX, и, в частности, отличается синтаксис перенаправлений.

Чтобы перенаправить стандартный вывод и стандартную ошибку на /dev/nullс этими оболочками, используйте>& /dev/null:

ssh -q user@server 'cd directory && command >& /dev/null &'

В качестве альтернативы можно явно вызвать оболочку POSIX для запуска команды:

ssh -q user@server 'sh -c "cd directory && command >/dev/null 2>&1" &'
2
28.01.2020, 02:29

Теги

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