df
またはmount
を使用するとき、私は何よりも物理ディスクパーティションに関心があります。最近では、これらのコマンドの出力は、一時的および仮想的なファイルシステム、cgroup、その他私が定期的に関心のないものに圧倒されています。
出力の物理パーティションは常に '/
'で始まるため、df
およびmount
のエイリアスを作成してみました。
alias df1="df | egrep '^/'"
alias mount1="mount | egrep '^/'"
mount1
の場合は問題なく機能します(ただし、 '/
'は赤で表示されます)。ただし、df1
の場合、-h
オプションをdf
およびdf1 -h
を実行できません。使用する可能性のあるすべてのオプションの組み合わせにエイリアスを設定したくない。私は本当にbashで関数を定義することを検討する必要がありますか? df1
のより良い解決策はありますか?
次のように関数を定義できます。
function df1() { df "$@" | grep -E '^/'; }
出力例:
$ df1 -h
/dev/sda8 25G 8.1G 16G 35% /
/dev/sda4 25G 20G 5.8G 78% /media/pandya/Documents+Edu
/dev/sda3 9.5G 7.1G 2.0G 79% /media/pandya/Ext4
/dev/sda7 24G 17G 6.9G 71% /media/pandya/Extra+Other
/dev/sda6 26G 25G 448M 99% /media/pandya/Media+Game
/dev/sda10 15G 7.9G 7.1G 53% /media/pandya/Miscellaneous
/dev/sda5 36G 22G 14G 63% /media/pandya/Software+OS
ここに $@
を使用すると、引数を入力できます。 [ご了承ください $@
は、具体的な理由がない限り、常に二重引用符で囲む必要があります。 -ed]
この回答は、次の問題に対処するために yves's を試みます。
すべてのオプションの組み合わせにエイリアスを設定したくない(1)
そして
「/」は赤で表示されますが(2)
および(3)重要な情報を可変出力に追加します。これは、指定されたフラグに従って変化するdf
のヘッダー行です。
(1)定義により引数を取るため、function
が必要です。また、以下で説明するように、定義と使用は非常に簡単です。
(2)赤い/
はgrep --color
によって生成されます。これは、grep
自体の一般的なエイリアスです(alias
を実行することで確認できます)。
function df1
{
df $* | sed -n '1p;/^\//p;'
}
上記の改行は読みやすさを向上させるためのもので、スペースで置き換えることができます。
このスニペットをインタラクティブなbashセッションに直接コピーして貼り付けるか、さらには~/.bashrc
に追加します。
$ df1
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/disk1 487358464 316093104 171009360 65% /
/dev/disk2 524032 302620 221412 58% /Volumes/Packer
$ df1 -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/disk1 hfs 465G 302G 164G 65% /
/dev/disk2 hfs 512M 296M 217M 58% /Volumes/Packer
$ df1 -hT .
Filesystem Type Size Used Avail Use% Mounted on
/dev/disk1 hfs 465G 302G 164G 65% /
関数df1
は、渡した引数を使用してdf
を呼び出し、出力をsed
にパイプ(|
)します。これは、-n
で呼び出され、パターンスペースの自動印刷を抑制します。残りはsedの「スクリプト」を表現しています。実際には2つあります。
1p
は、1行目を出力します。この例では、df
のヘッダーです(ps
パイピングにも同じものを使用しています)。/^\//p
は/
で始まるすべての行に一致し、それを出力します;
は2つのsedスクリプトを分離しますalias df='df -hT -xtmpfs -xdevtmpfs'
を使用しています。
GNU df
を最近Linuxで実際に使用できるようにするためにエイリアスを使用する必要があります。「実際の」ファイルシステムのみを表示するオプションがあります(それが何であれ)手段)。
正確には、df -hxtmpfs
はほとんどのがらくたを取り除き、エイリアスなしで引き続き使用できます。 netstat -tulnp
などほど悪くない... *ため息*