久しぶりにawk使ったらほんとに忘れててビビった
鯖缶の必携ツールと言えばtailとかcutとかawkとかですよね。
str='';for sid in `cat some.txt | cut -f13|sort|uniq`;do if [ -n "$str" ]; then str="$str|";fi;str="$str$sid";done;awk -v m="/$str/" '$1 ~ m {print}' ~/another.txt > yet_another.txt
というのを書くのに(結果はとっくに得られてたのに)20分くらい費やした。
#!/bin/bash str='' for sid in `cat some.txt | cut -f13|sort|uniq` do if [ -n "$str" ] then str="$str|" fi str="$str$sid" done awk -v m="/$str/" '$1 ~ m {print}' ~/another.txt > yet_another.txt
some.txtの13列目に入ってる値をanother.txtの1列目と照らし合わせてyet_another.txtに書き出す。添削してくだちい。
追記
debugコードが残ってたので消した
追記
だめじゃん!
awk -v m="/$str/" '$1 ~ m {print}' ~/another.txt > yet_another.txt
じゃなくて
awk -v m=$str '$1 ~ m {print}' ~/another.txt > yet_another.txt
じゃん。ひどい。ものすごい勘違いをしていた。