Linux, эквивалентный из Cisco, “начинает” команду

Если Ваш терминал поддерживает zmodem протокол (Konsole KDE делает), и удаленной системе установили lrzsz пакет, можно инициировать прямую передачу через терминальное использование:

sz foo.txt

Подсказки Konsole необходимо было сохранить файл и это - это. Экран GNU, по-видимому, имеет поддержку zmodem также.

2
25.01.2012, 03:22
4 ответа

Несомненно, это легко сделало использование awk:

$ echo -e 'a\nb\nc\nd' | awk '{if (p) {print;}} /^b$/ { print; p=1;}'
b
c
d

$ echo -e 'a\nb\nc\nd' | awk '{if (p) {print;}} /^b$/ { p=1;}'
c
d

Они могут также быть сокращены как (благодаря @manatwork):

$ echo -e 'a\nb\nc\nd' | awk '/^b$/{p=1} p'
b
c
d

$ echo -e 'a\nb\nc\nd' | awk 'p; /^b$/{p=1}'
c
d

Прокрутку его в удобный сценарий оболочки оставляют как осуществление для пользователя.

5
27.01.2020, 21:49
  • 1
    Благодаря действию по умолчанию, которое может быть записано короче как awk '/^b$/{p=1} p или awk 'p; /^b$/{p=1}, завися, если Вы хотите включать согласующий отрезок длинной линии или нет. Но благодаря диапазонам шаблона awk '$0=="b",0' достаточно. –  manatwork 24.01.2012, 16:25
  • 2
    Подход awk происходит самый близкий... предполагают, что я должен узнать больше о awk! Я в конечном счете хотел бы включать его как псевдоним в моем bashrc. –  Aquadisco 24.01.2012, 23:04

grep -A1000 search дает 999 строк вывода после каждого согласующего отрезка длинной линии.

4
27.01.2020, 21:49
  • 1
    +1, но почему не только барабанят '9' ключ (-A99999) несколько раз? –  Gerald Combs 24.01.2012, 02:34

Использовать less и затем / для поиска:

petrus@hive:/usr/bin$ ls -l | less
total 535796
-rwxr-xr-x 1 root   root        30244 2011-02-23 14:22 [
lrwxrwxrwx 1 root   root            8 2011-05-26 01:22 2to3 -> 2to3-2.7
-rwxr-xr-x 1 root   root           96 2011-04-11 21:07 2to3-2.7
[...]
-rwxr-xr-x 1 root   root         9588 2011-02-24 09:43 appres
-rwxr-xr-x 1 root   root         6930 2011-05-20 23:53 apr-1-config
:

И теперь путем ввода/, менее быстрое (:) изменится. Если я ищу "lsusb":

-rwxr-xr-x 1 root   root         9588 2011-02-24 09:43 appres
-rwxr-xr-x 1 root   root         6930 2011-05-20 23:53 apr-1-config
/lsusb
lrwxrwxrwx 1 root   root           13 2011-05-26 01:24 lsusb -> ../sbin/lsusb
-rwxr-xr-x 1 root   root       114528 2010-11-24 18:16 ltrace
[...]
3
27.01.2020, 21:49

Это довольно легко в sed: распечатайте все строки от первой строки, соответствующей шаблону к последней строке ($).

sed -n '/pattern/,$p'

Если Вы хотите опустить строку, соответствующую шаблону, удалите все до и включая его.

sed '1,/pattern/d'
1
27.01.2020, 21:49

Теги

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