GNU/Linux >> Linux の 問題 >  >> Linux

出力を新しい行に分割しますか?

スクリプト./abcを作成しました 。

出力を新しい行に分割したい。

mycode:

#!/bin/bash
dir="$1"

echo -n "size of file:"
du -hba $dir | sort -n -r | tail -1

私の出力は次のとおりです:

size of files: 20kb
         /path/to/sport

次のような出力が必要です:

size of files: 20kb
         /path/to/sport

承認された回答:

私はこのようなことを考えます:

du="$(du -hba "$dir" | sort -n -r | tail -1)"
printf "size of file: %snt%sn" "${du/$'t'*}" "${du#*$'t'}"

du 変数は検索結果を取得します。次に、printf用にタブで区切られた2つの部分に分割されます。 ステートメント、各部分は%sでフォーマット文字列に補間されます 。

この構成は、改行、タブ、およびその他の異常な文字を含むファイル名を処理する必要があります。


Linux
  1. 値が欠落している新しい行を挿入しますか(na)?

  2. Ls-lがLs-sとは異なるサイズを出力するのはなぜですか?

  3. ls 出力を csv に変換する

  1. awk の bash キャプチャ出力を配列に

  2. 複数行の出力を 1 行に連結する方法は?

  3. UNIXで、ファイルの10行目から15行目を別のファイルにコピーする方法は?

  1. 出力 ls -l サイズ フィールドを数千単位でグループ化しますか?

  2. dd 入出力エラーの解釈

  3. UNIXのtimeコマンドの出力をbashの変数にリダイレクトしますか?