원하는 경우 해당 목적으로 내 bash 스크립트를 사용할 수 있습니다. 실제로 필요한 것보다 약간 더 많은 작업을 수행합니다. 즉, 사용 된 공간의 양도 보여줍니다. 당신이 그것을 좋아하기를 바랍니다 :) 그리고 나는 또한 내 리눅스 상자 에서처럼 출력이 깔끔해지기를 바랍니다 ... (참고 : HDD 및 DVD-ROM과 같은 실제 하드웨어 만 표시 하지만 내 목적으로는 충분합니다.)
중요 사항 :이 스크립트는로sudo
인해 ONCE에서 실행해야 할 수도 있습니다blkid
. 적어도 내 배포판에서 bootup 후 일반 사용자로 실행하면 nilblkid -o export
이 출력 됩니다 . 의 "일반 사용자 변환" 에서 데이터는 실제로 캐시 파일 (일반적으로 ) 에서 검색되기 때문에 쓰기 만 가능 하므로 현재 데이터로 채워지기 위해 실행이 필요 합니다.blkid
/run/blkid/blkid.tab
root
sudo
#!/bin/bash
# LICENSE: GPL
if [[ $(id -u) -ne 0 ]]; then
if [[ ! -s /run/blkid/blkid.tab ]]; then
# no cache file found when run as regular user
# this will require one run under sudo to populate cache file
echo -e "Cache file does not exist or is empty.\nPlease give your root password to continue:\n\n"
sudo blkid >/dev/null
fi
fi
df -P |
sort |
awk 'BEGIN {
fmthdr = "%-12s%-22s%-10s\t%-5s\n"
# since we want to use single quotes for showing label names, we had better
# replace the problematic single quote character by its hex representation, "\x27"
fmtlin_w_qu = "%-12s\x27%-17s\x27\t %-10s\t%4s used\n"
fmtlin_wo_qu = "%-12s%-17s\t %-10s\t%4s used\n"
printf fmthdr, " Device ", "Volume Label", "File System", "Storage usage"
printf fmthdr, "---------", "------------", "-----------", "-------------"
}
/^\/dev\/[sh]/{
lab = "" # CLEAR lab w/every run (very important!)
("blkid -o export "$1" | grep LABEL | cut -f2 -d=") | getline lab
("blkid -o export "$1" | grep TYPE | cut -f2 -d=") | getline fs
if (lab == "") {
lab = "<none>"
fmtlin = fmtlin_wo_qu
}
else
fmtlin = fmtlin_w_qu
printf fmtlin, $1, lab, fs, $5
}'