uniq | sort をイッパツでやるやり方

このエントリーをはてなブックマークに追加
1田野@アクセスネット
…ってないものでしょうか?
ファイルサイズの一覧を取得したいが、同じサイズ(0Byte等)のファイルが沢山あるので、重複を省きたい時、
$ ls -l hogehoge | awk '{print $5}' | uniq | sort
とやってますが、もっとうまい方法はないものでしょうか?
============================================================================================================================================================================================================================================終了
>ls -l hogehoge | awk '{print $5}' | uniq | sort

これだと重複する。下と比べてみんさい。
ls -l hogehoge | awk '{print $5}' | sort | uniq

さらに、これと比べてみんさい。
ls -l hogehoge | awk '{print $5}' | sort -u
ls -l hogehoge | sort -k 5

ファイルサイズしか得られないが、本当にこれでいいのかい?


4名無しさん@お腹いっぱい。:02/02/26 23:18
ふつう uniq|sort は意味無いよね。sort | uniq を直感しなきゃ。
5田野@アクセスネット:02/02/26 23:19
私が求めていたのは正にこれでした。
ls -l hogehoge | awk '{print $5}' | sort -u
出力をパイプしてまた他で使うのでファイルサイズだけでいいのです。

ls -l hogehoge | sort -k 5
は5カラム目でsortして全カラム出力ですね。

-uも、-kもmanに出てるのですがいかんせん…
-------------------------------------------------------------
-k フラグを使用したソート・キー定義
-k KeyDefinition フラグは、以下の形式を使用します。
-k [ FStart [ .CStart ] ] [ Modifier ] [ , [ FEnd [ .CEnd ] ][ Modifier ] ]
ソート・キーは、FStart 変数で指定されたフィールドおよび CStart 変数で指定された
桁で始まり、FEnd 変数で指定されたフィールドと CEnd 変数で指定された桁で終わるす
べての文字を含みます。Fend を指定しないと、行の最後の文字が想定されます。CEnd を
指定しないと、FEnd フィールドの最後の文字が想定されます。KeyDefinition 変数の任
意のフィールド番号または桁番号は省略することができます。デフォルト値は以下のと
おりです。

-u ソート・キーとオプションに従って等価としてソートされる行の各セットの、最初の
行以外をすべて抑制します。
-------------------------------------------------------------
…との「マニュアル ページ」なる「説明」が分からないからと、こういったBBSに質問しに来てボロカスに言われるのは、
まるで江戸時代の百姓の子供が
「字が読めない親を持つ奴、書けない親を持つ奴は学問なんかしたってしょうがない」
って言われてるのと一緒でヤンなった。

とにかく、>>3 さん、ありがと。
今度は既存の質問スレで質問してくださいね。
こいつ、単発質問スレ2回目かよ。
8名無しさん@お腹いっぱい。:02/02/26 23:30
猫に小判、豚に真珠、1にUNIX
いいからageんな。
たしかに5で引用されたマニュアルの和訳はわけわかんない。
こういうときは、英文マニュアルの方を読むのじゃよ。

意味不明な日本語から原文を想像しながら考えるよりは、辞書引きながら
英文読む方がナンボかマシ。そのうち辞書引かんでも読めるようになるしな。
11名無しさん@お腹いっぱい。:02/02/27 00:01
sortの時のオプションは + と -k どっち使ってる?
結構使うコマンドだし、くそスレ救済ということで
sortとuniqの組み合わせでこんなことやってるよ/できるの?
にはなりませんか
>くそスレ救済ということで
その意図は、残念だけど、的外れだよ。
そもそもが既存の質問スレを使うのが妥当なんだからさ。
13名無しさん@お腹いっぱい。:02/02/27 00:09
今まで+ばかり使ってて-kオプションって知らなかった。
ちょっと勉強になった。

今度はジサクジエンかよ
1513:02/02/27 00:18
どれとどれが?
16login:Penguin:02/02/27 02:55
15と13
うんこ
19_/DFC/_:02/02/27 06:04
つい最近、ハードディスク内のあらゆるファイルのmd5sumをとって、
内容が重複しているファイルを消しましたが、そういうスレでは、
ないのですよね。
おはようございます。朝来て見て、いやあ、こんだけスレが伸びてるとは。。。
しかしハッキリ言ってmanで、
------------------------------------------------------------------
ソート・キーは同様に、以下の形式でも指定できます。
[+[FSkip1] [.CSkip1] [Modifier] ] [-[FSkip2] [.CSkip2] [Modifier]]
+FSkip1 変数は、ソート・キーの最初のフィールドに達するまでにスキップするフィールド数を指定し、
+CSkip 変数は、そのフィールド内でソート・キーの最初の文字に達するまでにスキップする桁数を指定します。
-FSkip 変数は、ソート・キーの後 の最初の文字に達するまでにスキップするフィールド数を指定し、
-CSkip 変数は、そのフィールド内でスキップする桁数を指定します。フィールドおよび桁のスキップ数はすべて省略することができます。
デフォルト値は以下のとおりです。
FSkip1 行の最初
CSkip1 ゼロ
FSkip2 行の最後
CSkip2 ゼロ
Modifier 変数で指定された修飾子は、-k フラグのキー・ソート定義と同じです。
+FSkip1.CSkip1 変数によって指定されるフィールド数と桁数は、それらの変数がソート・キーに達するまでにスキップするフィールド数および桁数を指定しているため、一般的には、ソート・キー自身のフィールド数および桁数よりも 1 小さい数です。
以下に例を示します。
+2.1b -3r
上記の例では、3番目のフィールドの 2番目の非ブランク桁から始まり、3番目のフィールドの最後までのソート・キーを使用して、照合順序と逆の順序でソートするように指定されています。
ステートメント +2.1b により、2つのフィールドをスキップし、次に先行ブランクとさらに桁を1つスキップするように指定されています。
+FSkip1.CSkip1変数が、行の最後を超えたり -FSkip2.CSkip2変数の後ろにある場合、ソート・キーは無視されます。
注: 1行の最大フィールド数は10です。
------------------------------------------------------------------
とか書かれたって、>>3さんや>>11さんみたいに説明されて初めて「そう言われてみればそう意味の事が書いてあるな」って気付くってもんです。
そして市販のコマンド本には-k, +オプションの説明が書かれてるものが、少なくとも私の持ってる中には無かったんです。
Web上のUNIXコマンド解説サイトにもこのオプションは載ってませんでした。

あ、ところで話は変わりますが皆様、重宝させてもらってるUNIXコマンド解説サイトってどこですか?
本を紹介し合うスレは有るけどサイトを紹介し合うスレは無かったと思うので。。。
これ別スレにした方が良いんでしょうかね。

>>19さん、
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/159md5sum.html
を読んだんですが、メッセージダイジェストって「内容の重複」を調べられるものなのですか?
>>20
今後単独質問スレ立てちゃダメよ。
>>20
伸びたからって今後もスレ立てるなよ。
>>20
いいわけはいいから疑問に思ったらとにかく試せ。
>>20
ちょっとは反省しる!
試験的書込
試験的書込
26Lynasarous ◆BLuFPS7M :02/07/11 01:19
トリップテスト
27山崎渉:03/01/15 13:30
(^^)
28 ◆kwai5Y6kNk :03/01/29 03:23
ふぁいとぉぉぉぉぉぉぉっ



--------------------------------
|..............................|
|...-------- .-----------.|
------ |...|+.?|..-------.|..|(((| +.|
|.... #[-...|/+.|..|....)|.|..|(((| |.| --------
|....| # |...|...||-|.._@)|.-|-|...|---.| ..`....|
|...>)########### |...-|---..|.....|....--|--....| |......|
|....| |..........|.@..[|.............|# ##...<...|
|....| |........%.--|----.{......*....|# # --------
------ |............)...........).....|# ###
|...-|---...........-|---|--...|# #
|...|...|-------!---| |...|...?#######
|...|...| |.(.)/+((| |!)/|...|#
|...|...| |..)|.|.(|--|/?!|...|
....-----%------.----..-----...|
|.................)........[...|
--------------------------------


nxt 使え。
31 ◆kwai5Y6kNk :03/02/24 21:55
nxt で uniq | sort をイッパツでやるには、ど→すればいいの→?
tetete-
tototo
これかよ。
35名無しさん@お腹いっぱい。:03/03/02 19:56
根本的に間違っていませんか? find コマンドなら余裕です。
スクリプトで。
LISPのシンボルにするとuniq必要ない
38山崎渉:03/04/17 12:28
(^^)
39山崎渉:03/04/20 06:02
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
40山崎渉:03/05/22 02:17
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―
41山崎 渉:03/07/15 11:33

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
42あぼーん:あぼーん
あぼーん
43あぼーん
あぼーん