GNU/Linux >> Znalost Linux >  >> Linux

Zástupné znaky:Jak vypsat pouze soubory končící na `.txt` bez použití znaku tečka?

Zavřeno . Tato otázka vyžaduje podrobnosti nebo jasnost. Momentálně nepřijímá odpovědi.

Chcete zlepšit tuto otázku? Přidejte podrobnosti a objasněte problém úpravou tohoto příspěvku.

Zavřeno před 4 lety.


Vylepšete tuto otázku

Mám adresář s devíti soubory.

  • 1 končící na .bat
  • 2 končící na .bak
  • 4 končící na .txt
  • 2 končící na .xtxt

Moje otázka zní, jak mohu uvést pouze soubory končící na .txt , ale bez použití tečky. Chci tedy zobrazit 4 končící na .txt , bez použití příkazu

ls *.txt

protože nechci použít období k filtrování souborů. Momentálně se učím zástupné znaky, takže se v tomhle používají. Myslím, že musím použít ! nějak, ale nejsem si jistý, kde ho použít.

Přijatá odpověď:

Nerozumím proč nechcete používat . . Každopádně můžete místo toho použít nějakou třídu znaků, kde . je zahrnuto, ale ostatní znaky z vašeho adresáře nikoli, dobrým kandidátem pro tento účel může být [[:punct:]] :

LC_ALL=C ls -- *[[:punct:]]txt

Změnil jsem národní prostředí na C protože na tom závisí třídy znaků a přidali -- na ls k zobrazení seznamu všech souborů, které začínají - správně.

Definice:

`[:punct:]'
     Punctuation characters; in the `C' locale and ASCII character
     encoding, this is `! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ 
     ] ^ _ ` { | } ~'.


Linux
  1. Jak mohu uvést (ls) posledních 5 upravených souborů v adresáři?

  2. Jak mohu pomocí ls vypsat pouze neprázdné soubory?

  3. Jak přejmenuji soubory s mezerami pomocí prostředí Linux?

  1. Jak vypisovat, nahrávat a stahovat soubory ze serveru SFTP pomocí golang

  2. Jak porovnat pouze první řádek dvou souborů?

  3. Jak vypsat strom zařízení jádra

  1. Jak získat počet souborů v adresáři pomocí příkazového řádku?

  2. Jak vypsat seznam N’th Youngest File (bez analýzy Ls!)?

  3. Jak stáhnout pouze soubory Info-json pomocí Youtube-dl, aniž byste museli stahovat skutečné video?