Estoy tratando de darle sentido al siguiente comando de shell, para obtener una lista de paquetes que se pueden actualizar:
dpkg --get-selections | xargs apt-cache policy {} | grep -1 Installed | sed -r 's/(:|Installed: |Candidate: )//' | uniq -u | tac | sed '/--/I,+1 d' | tac | sed '$d' | sed -n 1~2p
Que grep -1
significa No puedo encontrar ninguna mención -1
en la página de manual de grep, ni en ninguna otra parte de Internet.
grep --count
?Respuestas:
La
-1
opción es la opción de estilo tradicional de Unix para indicar que deseagrep
incluir una1
línea de texto adicional por partido para el contexto .Si hace un
man grep
y busca el encabezado Control de línea de contexto , encontrará que las siguientes opciones describirán las diferentes formas en que puede solicitar líneas de contexto adicionales. Específicamente en cuanto a su pregunta, verá:aquí es donde
-1
está documentado (como-NUM
donde NUM es 1) para que los siguientes comandos se comporten de la misma manera:grep -1
ogrep -C 1
ogrep --context=1
fuente
Logré resolverlo mirando los resultados. Especifica cuántas líneas anteriores y posteriores (de "contexto") mostrar para cada coincidencia. Entonces, en este caso particular, grep mostrará la línea anterior y la línea siguiente para cada coincidencia, además de la línea correspondiente.
fuente
-NUM
y la información como-num
.Esto no se llama nada
grep -1
, si va a la terminal y escribegrep --help
no encuentragrep -1
fuente
-NUM
. Entonces esta respuesta es incorrecta.NUM
puede ser reemplazado por cualquier número, por lo que se le permite utilizar-1
,-2
,-3
... ver el resto de las respuestas correctas.