Описание тега edinburgh
Как разобрать предыдущей команды в bash?
Пример:
корень$ СШ [email protected]
корень$ Эхо !$ &>/tmp/foo.txt
корень$ кот /tmp/foo.txt
[email protected]
Цель:
Отправить просто на адрес 1.2.3.4
, чтобы foo.txt
Я пытался использовать awk, но не нашел успех
#не работает
кошки /tmp/foo.txt |у awk '{печати $2,3$,$4}'
Я также попытался разобрать только цифры с помощью СЭД
#не работает
СЭД 'с/.//Р' /tmp/foo.txt
СЭД-х/[0-9]//Р' /tmp/foo.txt
Соображения
1.2.3.4 всегда будет число между 0.0.0.0 и 255.255.255.255
Имя пользователя ФОО
может быть любой длины
[email protected] это не обязательно единственный параметр, передаваемый в СШ (например 1.2.3.4.. СШ-л ФОО)
Ресурсы
https://stackoverflow.com/questions/1733692/how-to-use-sed-awk-or-gawk-to-print-only-what-is-matched
https://stackoverflow.com/questions/2777579/sed-group-capturing
http://www.grymoire.com/Unix/Sed.html
Обновление
Дополнительные Разъяснения
Конечной целью будет создание функции в моей .bashrc следующее, что позволит мне легко удалить конфликтующий ключ SSH.
корень$ СШ [email protected]
#какой-то большой ошибки предупреждение о человек в середине атаки
корень$ SSH-ключей -Р 1.2.3.4