Чтобы ответить на заголовок вашего вопроса:
Passing multiple of arguments with whitespaces through [a script] to ssh
Предлагаю избежать кавычек:
ssh user@192.168.3.3 echo "\"arg 1\" \"arg 2\""
... отправит "arg 1"
в качестве первого аргумента и "arg 2"
в качестве второго аргумента, в данном случае в команду echo на удаленной машине, таким образом производя вывод:
arg 1 arg 2
ПРИМЕЧАНИЕ. :Команда echo выводит отдельные аргументы с одним пробелом между ними. Однако (множественные )пробелы, содержащиеся в отдельных аргументах, сохраняются. Воспринимайте это как доказательство того, что пробелы на самом деле являются частью аргументов,что было предложено в названии вопроса.
Как упоминалось в комментариях @Bodo, похоже, вы достигли точки, когда apt
удалил libnettle
, который требуется для запуска... apt
.
Попробуйте загрузить соответствующий пакет для вашей архитектуры с помощьюhttps://packages.debian.orgи установить его вручную с помощью dpkg -i <path to the.deb>
.
Вы можете попробовать wget <URL>
или curl <URL> > libnettle.deb
.
Если и curl, и wget не работают из-за того, что они также зависят от libnettle, попробуйте загрузить его с другого компьютера и использовать SSH для копирования.
Затем снова -запустите apt-get install --fix-broken
.
apt
не работает, потому что репозиторий buster main
отсутствует в вашем sources.list, apt
попытается обновить (понизить )все пакеты до stretch-backports
.
отредактируйте свой /etc/apt/sources.list
, оставьте только следующие строки:
deb http://deb.debian.org/debian buster main
deb http://deb.debian.org/debian-security/ buster/updates main
deb http://deb.debian.org/debian buster-updates main
Временно отключите сторонний репозиторий в /etc/apt/sources.list
, затем запустите:
sudo apt update
sudo apt upgrade