ed недействительный адрес macOS

Вы можете использовать команду info, чтобы узнать больше деталей о любой команде в coreutils.

Вот часть команды info ls, объясняющая опцию -l:

`-l'
`--format=long'
`--format=verbose'
     In addition to the name of each file, print the file type, file
     mode bits, number of hard links, owner name, group name, size, and
     timestamp (*note Formatting file timestamps::), normally the
     modification time.  Print question marks for information that
     cannot be determined.
     ........
4
04.06.2018, 13:27
2 ответа

El primer endifocurre antes que el primero Delete, por lo que edse confunde acerca de que el rango se especifica "al revés".

Primero querrá encontrar la primera aparición de Delete, y luego aplicar el comando desde esa línea hasta la siguienteendif:

1,/Delete/
.,/endif/p

El primer comando colocará el cursor en la primera línea del archivo que contiene la palabra Delete, y el segundo comando imprimirá las líneas desde esa línea hasta la siguiente línea que contiene la palabra endif.


Si tuviera que dar el mismo comando en vi, se quejaría con "La segunda dirección es más pequeña que la primera", y vimpreguntaría "Rango hacia atrás dado, OK para intercambiar (y/ norte )?" al dar el comando de edición :/Delete/,/endif/p.

sedno tendría ningún problema ya que busca la primera dirección antes de comenzar a buscar la segunda dirección (ya que es un editor de flujo ).

4
27.01.2020, 20:53

Necesidad /startrange/,/endrange/d. Ejemplo

$ cat inp
foo
Delete
these lines
endif
bar
$ ed inp
33
/Delete/,/endif/d
w
8
q
$ cat inp
foo
bar
$

Solo usaríased:

$ sed -i '/Delete/,/endif/d' inp
$
0
27.01.2020, 20:53

Теги

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