ちょっと、私はLinuxスクリプトを書いています。興味深い発見になりました。未知の量の空白をXの量に置き換えてください。
私は、ディレクトリ内のファイルをそのサイズでソートし、最大のものを出力するコマンドを持っています。これは、だから私は一人で最大のファイルサイズを取得し、それを印刷したい
895918591 8 -r-w-x 1 user01 xdf 1931 28 march 23:21 ./myscript.sh
の同類の中で何かが印刷されます
find . -type f -ls | sort -r -n -k7 | head -n 1
を次のようにコマンドがあります。これを分離するためにcut -d' ' -f2
の問題があります。これは空の出力のみを残します。これは、スペースの量に一貫性がないためです。
だから私はこの
find . -type f -ls | sort -r -n -k7 | head -n 1 | tr -d [:blank:] | cut -d' ' -f2
ような何か問題があるをやってみました、これは今、私は、共通のセパレータでそれらを分離することはできませんすべての空白を削除します。だから私は、文字通りすべての空白スペースを置き換えて、空白スペースで置き換える方法があるのかと尋ねています。
もしそうでなければ、少なくともそのバイト数に達する他の方法はありますか?代わりにカットを使用しての
代わりtr' 'の、と複数の空白のいずれかの発生を置き換えるために' sedのの/ \ S \ +// g''を使用1つのスペース。オプションで 'sed 's/\ s \ + /:/ g''をコロンで置き換えてください。 –