ソートに--output =オプションがあるのはなぜですか?

ソートに--output =オプションがあるのはなぜですか?

sort -o重複しているようです。可能であればそれを使用するのはなぜですかsort >

時にはシェルリダイレクトは利用できませんか?

ベストアンサー1

ファイルを所定の位置に並べ替える:

sort -o file file

最初に使用すると、sort file >file呼び出されたファイルをfileゼロサイズに切り捨て、sortその空のファイルを呼び出すと、元のファイルの内容に関係なく空の出力ファイルが生成されます。

また、コマンドまたはオプションのリストから自動的に作成済みたとえば、スクリプトを使用して-o somefileオプションの最後に追加すると、以前に設定された出力ファイルが上書きされるため、出力ファイルの場所を追加のオプションで制御できます。

sort_opt=( some list of options )

if [ ... something ... ]; then
    # We don't need to go through and delete any old use of "-o"
    # because this later option would override it.
    sort_opt+=( -o somefile.out )
fi

sort "${sort_opt[@]}" "$thefile"

sortシェルがファイルをリダイレクトせずにバイナリ実行可能ファイルを直接呼び出すこともあります。

これは-o標準オプション--outputですが、GNU拡張です。

おすすめ記事