Linux
獲取所有磁碟的簡單列表
如何獲取所有磁碟的列表,像這樣?
/dev/sda /dev/sdb
ls (雖然顯示單個分區)
# ls /dev/sd* /dev/sda /dev/sda1
ls(僅磁碟,忽略分區)
# ls /dev/sd*[a-z] /dev/sda
磁碟
# fdisk -l 2>/dev/null |awk '/^Disk \//{print substr($2,0,length($2)-1)}' /dev/xvda
您可以使用
df
列出所有已安裝的分區,該命令將輸出類似$ 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 ..
如果您只想列出已安裝的磁碟,可以使用 grep 過濾輸出,例如
$ df | grep '^/dev' /dev/sda1 230467740 37314752 181422812 18% / /dev/sdb1 961303548 130106540 782342500 15% /media/Data
匹配以 , 開頭的行
/dev
,或者,如果您只想要名稱df | grep -o '^/dev[^ ]*' /dev/sda1 /dev/sdb1
它將匹配
/dev
以第一個空格字元開頭的字元串,並僅輸出匹配項(選項-o, --only-matching
),編輯
以上將列出所有分區,如果您需要列出磁碟,請使用
lsblk
以下選項(模式匹配如上)$ lsblk -dp | grep -o '^/dev[^ ]*' /dev/sda /dev/sdb
-d
僅列出設備,不列出分區-p
輸出整個路徑編輯 2
正如下面所指出的,
lsblk -dpno name
將給出相同的結果,不需要grep
.