- ベストアンサー
sortコマンドのオプションなどの意味
シェルスクリプトに次のようなsortコマンドが出てきました。 sort -t, /export/home1/aaa -u -k 1 -o $CSV_OUTFILE/$OUTPUT_FILE \ $CSV_OUTFILE/$INPUT_FILE_AAA $CSV_OUTFILE/$INPUT_FILE_BBB (aaaとAAAとBBBは変えていますが、あとはまったくもとのままです。) 行の最後の\は行継続の意味でよろしいでしょうか。 -t の直後に "," (カンマ) がありますが、これは「(空白区切りではなくて)カンマ区切り」という意味でよろしいですか。 (-tとカンマの間に空白は要らないのでしょうか。カンマはシングルクォーテーションで囲まなくてよいのでしょうか。) /export/home1/aaa というディレクトリの指定がありますが、これはなんのためでしょうか。 -u は同一行は重ねて出力しないという意味でよろしいでしょうか。 (キーが同じ行は重ねて出力しないという意味ではないですよね?) -k 1 の意味がわかりません。(ソートするキーの指定?) インプットファイルの指定と思われるものが2つありますが、入力ファイルは複数でも構わないのでしょうか? 以上ですが、わかるものだけでも結構です。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
manコマンドを使用して man sort とうてば説明が表示されます。 読んだ上で 1,3 2,2 3,1 なんていう中身のテストファイルを使ってテストされてはいかがでしょう。 UNIXのコマンドは実装によって挙動がことなる場合がありますから。 -kは並べ替えをするフィールドの指定です。 -k 1の場合は先頭のフィールドなので体制に影響ありません。 あとはだいたいご自分で推測されているとおりです。
その他の回答 (1)
- xjd
- ベストアンサー率63% (1021/1612)
manが日本語に翻訳されたJMのページがありますので、確認して下さい。
お礼
ご回答ありがとうございます。
お礼
ご回答ありがとうございました。 私の環境では以下のようでした。 -tと區切り文字の間に空白があってもなくても同じ。 區切り文字をシングルクォーテーションやダブルクォーテーションで圍っても圍わなくても同じ。 -k 1 先頭フィールドをソートのキーとする(+0と同じ。) -u 同一「行」を重ねて出力しない。