No WSL-Ubuntu 18.04 com Bash 4.4.20(1) e man
com less
eu corri dentro man grep
do comando com o -o,|
objetivo de combinar um -o com uma vírgula ou com um espaço em branco depois dele.
Mas, em vez disso, todos os espaços em branco no documento foram correspondidos, por que isso acontece e como eu poderia combinar apenas um -o com uma vírgula ou um espaço em branco depois dele?
Como uma expressão regular,
"-o,| "
corresponde em"-o,"
ou" "
.Use
-o(,| )
ou-o[, ]
para corresponder-o
seguido por um,
ou espaço. Ou-o\>
para um-o
que não é seguido por um caractere de palavra ( caracteres de palavra sendo sublinhado ou caracteres classificados como alnum na localidade).Em vez de usar
man
, você pode usarinfo
.info
manuais, especialmente para software GNU (como agrep
implementação encontrada no Ubuntu) são geralmente mais completos e, mais importante, aqui têm um índice e um índice pesquisável.Isso torna mais fácil pular para tópicos específicos na documentação.
Por exemplo, com:
Você pulará diretamente para a descrição da
-o
opção.Dentro
info
de , você também pode pressionar ipara exibir o índice (e entrar-o
lá com a Tabconclusão) ou I(maiúsculasi
) para obter uma lista de entradas de índice para uma determinada string de pesquisa.Cuidado, porém, que em alguns sistemas, mesmo os GNU, como Debian/Ubuntu, a documentação em
info
formato às vezes não é instalada por padrão. Você pode precisar instalar algumsomesoftware-doc
pacote para obter a documentaçãosomesoftware
eminfo
formato.Você está combinando
-o,
ou espaço. Você deseja corresponder-o
seguido por,
ou espaço. Tente-o(,| )
.