Создать переменную через ssh в bash

Чтобы вывести список всех пакетов, установленных с помощью aptitude , вы должны выполнить следующую команду:

cat /var/log/aptitude* | grep INSTALL]

edit

Следующая команда отобразит установленный пакет с его зависимостями:

cat /var/log/aptitude* | grep INSTALL

Чтобы исключить ЗАВИСИМОСТИ вы можете добавить ] или что-то вроде:

cat /var/log/aptitude* | grep INSTALL | egrep -v DEPENDENCIES

Вот пример emacs :

[INSTALL, DEPENDENCIES] emacs24:amd64
[INSTALL, DEPENDENCIES] emacs24-bin-common:amd64
[INSTALL, DEPENDENCIES] emacs24-common:amd64
[INSTALL, DEPENDENCIES] libm17n-0:amd64
[INSTALL, DEPENDENCIES] libotf0:amd64
[INSTALL, DEPENDENCIES] m17n-db:amd64
[INSTALL] emacs:amd64
1
04.09.2017, 12:56
1 ответ

Если вы не заключаете в кавычки EOFв <<EOF, расширение выполняется локальной оболочкой внутри документа (, поэтому $(date...)расширяется с помощью локального date, а $YYрасширен до значения в локальной оболочке (пустым, если вы не присвоили значение ранее )). Если вы хотите, чтобы содержимое документа -дословно передавалось в удаленную оболочку, вам нужно так или иначе процитировать EOF:

ssh -T root@IP << 'EOF'
YY=$(date +'%y')
echo "$YY"
EOF  
5
27.01.2020, 23:18

Теги

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