Por ejemplo, ¿cómo puedo replicar:
ls *.txt
cuando mis archivos de texto no tienen el .txt
final, y en lo que respecta a las extensiones, ¿aparecen igual que muchos otros tipos de archivos?
Alternativamente, ¿es posible enumerar específicamente solo los archivos que NO tienen extensión de archivo?
command-line
file-format
ls
usuario82212
fuente
fuente
grep
se puede usar con cualquier comando. El|
símbolo se usa para pasar la salida de un comando a otro, ygrep
coincidirá con líneas que tienen (o no tienen) texto específico. Pero si desea modificar el texto (que no sea solo imprimir líneas coincidentes), debe echar un vistazo alsed
comando.ls --classify | grep -v '/'.'*'
Con
ls -ignore="PATTERN"
usted puede excluir archivos de un resultado ls.Por ejemplo,
ls --ignore="*.txt"
para ignorar los archivos txt.fuente
Simplemente niegue su patrón (nota:
shopt -s extglob
es obligatorio).Para mostrar todos los archivos sin extensión:
Para mostrar no
txt
archivos, intente:fuente
El comando
ls -SX1|less
se ordenará por extensión en una sola columna y los archivos sin una se moverán a la parte superior. Se sugiere canalizar menos como en el ejemplo para directorios con más de unos pocos archivos para limitar la salida a una pantalla llena a la vez.fuente
Prefiero evitar el uso de grep para operaciones de listado simples.
Para evitar usar
grep
,Recomiendo usar
ls !(*.*)
para buscar archivos sin extensión de archivo, yls -I "*.gz" -I "*.tz"
ols --ignore={"*.jpg","*.png","*.bmp"}
para excluir extensiones de archivo específicas
fuente