GNU/Linux >> Znalost Linux >  >> Linux

Získejte jednoduchý seznam všech disků

ls (zobrazuje však jednotlivé oddíly)

# ls /dev/sd*
/dev/sda  /dev/sda1

ls (jen disky, ignorovat oddíly)

# ls /dev/sd*[a-z]
/dev/sda

fdisk

# fdisk -l 2>/dev/null |awk '/^Disk \//{print substr($2,0,length($2)-1)}'
/dev/xvda

Můžete použít df Chcete-li zobrazit seznam všech připojených oddílů, příkaz vydá něco jako

$ df
/dev/sda1      230467740  37314652 181422912  18% /
udev               10240         0     10240   0% /dev
tmpfs            5599420         0   5599420   0% /sys/fs/cgroup
/dev/sdb1      961303548 130106540 782342500  15% /media/Data
..

Pokud chcete vypsat pouze vaše připojené disky, můžete výstup filtrovat například pomocí grep

$ df | grep '^/dev'
/dev/sda1      230467740  37314752 181422812  18% /
/dev/sdb1      961303548 130106540 782342500  15% /media/Data

což odpovídá řádkům začínajícím /dev , nebo chcete-li pouze jména

df | grep -o '^/dev[^ ]*' 
/dev/sda1
/dev/sdb1

který bude odpovídat řetězcům začínajícím /dev až po první prázdný znak a vypíše pouze shodu (volba -o, --only-matching ),

Upravit

Výše uvedené zobrazí seznam všech oddílů, pokud potřebujete vypsat disky, použijte lsblk místo toho s následujícími možnostmi (shoda vzorů jako výše)

$ lsblk -dp | grep -o '^/dev[^ ]*'
/dev/sda
/dev/sdb
  • -d uvádí pouze zařízení, bez oddílů
  • -p vypíše celou cestu

Úprava 2

Jak je uvedeno níže, lsblk -dpno name poskytne stejný výsledek, není potřeba grep .


Linux
  1. Jak vypsat všechny přihlášené uživatele

  2. Jak vypsat všechny uživatele ve skupině Linuxu?

  3. grep velký seznam proti velkému souboru

  1. Vypište všechna připojení v Linuxu

  2. Jak získat seznam adresářů v zipu?

  3. Seznam všech dostupných manuálových stránek

  1. Regulární výrazy:Stahování všeho dohromady

  2. Seznam všech zařízení ALSA

  3. Jak mohu získat seznam všech chybně napsaných slov v textu pomocí Linuxu?