私はこれをしたい:
ls -altrhS 'find / -type d \( ! -name tmp -prune \) -size +10000k 2> /dev/null -print' | egrep -v 'ibd|MYD|MYI'
そのため、特定のサイズ(tmpディレクトリを除く)のファイルをこの形式で一覧表示したいと思います。私が読んだ内容はすべて完了する必要があると述べていますが、うまくいかず、一時ディレクトリの内容も引き続きインポートされます。
答え1
この試み:
find / -not -path "*/tmp/*" -size +10000k -ls 2> /dev/null | \
sort -n -k7 | egrep -v 'ibd|MYD|MYI'
説明する:
find / -not -path "*/tmp/*" -size +10000k -ls
/tmp/
: パスが 10000k より大きいパスで始まらないすべての項目を検索し、出力をfind
独自の形式で印刷します。ls -dils
sort -n -k7
:あなたの質問で述べたように、ls -altrhS
出力をファイルサイズで昇順にソートしたいとします。フィールド7の出力はファイルサイズls -dils
です。find
egrep -v 'ibd|MYD|MYI'
egrep
そして、これらの文字列をフィルタリングするあなたの部分
編集する:
人間が読めるファイルサイズの形式が必要な場合は、ls
次のコマンドを使用します。
find / -type f -not -path "*/tmp/*" -size +10000k -printf "%s %p\n" 2> /dev/null | sort -n -k1 | cut -d' ' -f2- | xargs -L 1 ls -lh