it-swarm-pt.tech

O que ^ d significa em ls -l | grep ^ d?

Quando eu faço ls -l | grep ^d lista apenas diretórios no diretório atual.

O que eu gostaria de saber é o que o sinal de intercalação ^ no ^d significar?

13
Glide

resposta de Andy está correto, como visto na página do manual:

Ancoragem

O sinal de intercalação ^ e o cifrão $ são metacaracteres que correspondem respectivamente à sequência vazia no início e no final de uma linha.

A razão pela qual funciona é a -l sinalizador para ls faz com que ele use o formato de listagem longa. A primeira coisa mostrada em cada linha são as permissões legíveis por humanos para o arquivo e o primeiro caractere é d para um diretório ou - para um arquivo

21
Michael Mrozek

Isso é um sinal de intercalação, não uma cenoura. Significa "começo da linha". O grep está correspondendo apenas às linhas que começam com "d".

14
Andy Lester