次のようなUnixのファイルがあります
">hello"
"hello"
"newuser"
"<newuser"
"newone"
<
ここで、ファイル内の一意の出現箇所を検索し (検索中にor>
のみを除外)、次のように出力したいと考えています。
">hello"
"<newuser"
"newone"
次のようなUnixのファイルがあります
">hello"
"hello"
"newuser"
"<newuser"
"newone"
<
ここで、ファイル内の一意の出現箇所を検索し (検索中にor>
のみを除外)、次のように出力したいと考えています。
">hello"
"<newuser"
"newone"
$ awk '{ w = $1; sub(/[<>]/, "", w) } word[w] == 0 { word[w]++; print $1 }' file1
">hello"
"newuser"
"newone"
これが Ruby での連想配列のアイデアです。
2.0.0p195 :005 > entries= [">hello", "hello", "newuser", "<newuser", "newone"]
=> [">hello", "hello", "newuser", "<newuser", "newone"]
2.0.0p195 :006 > entries.reduce({}) { |hash, entry| hash[entry.sub(/[<>]/,'')]=entry; hash}.values
=> ["hello", "<newuser", "newone"]