Если вы ищете количество полученных пакетов:
ssh -qn xckvl002 "ping -w2 -c3 xcvtc012 | awk '/packets transmitted,/ {print \$4}'"
Поскольку вы используете двойные кавычки вокруг удаленной команды, внутренние одинарные кавычки теряют свое непосредственное значение кавычек, и, таким образом, такие символы, как $
, по-прежнему необходимо экранировать. Это причина обратной косой черты в print \$4
.
Обратите внимание, что реализации ping
могут иметь разные выходные данные. В моем случае, например, N packets received
вместо Received = N
. Вы можете позаботиться о том, чтобы шаблон поиска, заключенный в косую черту в моем примере awk
, правильно определял строку сводки. Кроме того, если в вашем выводе имеется другое количество полей, разделенных пробелами -, вам, возможно, придется использовать число, отличное от 4, для переменной поля $4
.
РЕДАКТИРОВАТЬ :Решение с использованием sed
для тех, кому интересно:
ssh -qn xckvl002 "ping -w2 -c3 xcvtc012 | sed -nr 's/.*([0-9]+)\s*received,.*/\1/p'"
Из документов Dell:
Biosdevname is a udev helper utility developed by Dell and released under the GNU General Public License (GPL). It provides a consistent naming mechanism for network devices based on their physical location as suggested by the system BIOS.
biosdevname takes a kernel device name as an argument,
and returns the BIOS-given name it "should" be.
Параметр biosdevname
включен по умолчанию в системах с RedHat на базе оборудования Dell.
net.ifnames=0
— это параметр ядра, который отключает предсказуемое поведение переименования сетевого интерфейса.
ядро -команда -строка руководства
net.ifnames=
Network interfaces are renamed to give them predictable names
when possible. It is enabled by default; specifying 0
disables it
Как дополнение,
Параметр ядра biosdevname
вступает в силу только при соблюдении следующих требований:
biosdevname
пакет установлен