Использованиеawk
:
while read -r x
do
vreturn=$(echo | openssl s_client -servername "$x" -connect "$x":443 -CApath etc/ssl/certs/ca-certificates.crt 2>/dev/null | awk -F\: '$1 ~ "Verify return code"{print $2}')
echo "${x},$vreturn"
done <mylist.txt
Это будет использовать :
в качестве разделителя полей и установить переменную vreturn
на второе поле любой строки, содержащей Verify return code
в первой строке.
Также примечание ;
не требуется в конце каждой строки.
Я добавил параметр -r
к вашей команде read
, в основном по привычке, но это предотвратит интерпретацию обратной косой черты, которая может быть в именах ваших хостов (маловероятно ), как escape-символы.
Если вы используете ssh user@127.0.0.1
, вы фактически снова входите в систему, поэтому вы получаете стандартную среду входа для этого пользователя. su user
просто изменит пользователя.
Лучшее сравнение было бы с su - user
, который задает окружение. В этом случае кажется, что разница невелика, если только вы не делаете что-то особенное.
Интересно, люди, которые используют ssh
, просто используют унаследованные знания компании, потому что никто -не знал о -
с su
!
Не было бы большой разницы, если бы они не настроили какую-то специальную среду для соединения ssh.
Вы можете найти его в /home/user/.ssh/ssh_config
, /etc/ssh/sshd_config
или /etc/sshd_config
.
Основываясь на информации, содержащейся в вопросе, нет оснований предполагать, что SSH-соединение вообще заканчивается на локальном компьютере.
Иногда я видел, как определенный порт переадресовывался с локального хоста на ssh-сервер на удаленном хосте. Тогда ssh user@localhost -p 12345
становится эквивалентным ssh user@remote.example.com
с очевидными отличиями от локального su
.
Причина такой настройки обычно заключается в том, что таким образом пользователям не нужно помнить или знать о remote.example.com
, и фактически они могут быть защищены брандмауэром, так что они не могут даже получить к нему прямой доступ. Это также позволяет администраторам прозрачно изменять способ маршрутизации фактического соединения.