2008-04-10
■[awk]awk だけで which (w
昨日、find を awk だけで作ろうとして断念したけど、which ならば。
#! /usr/bin/gawk -f # which.awk - which command # usage: gawk -f which.awk command BEGIN { for(i = 1; i <= split(ENVIRON["PATH"], a_path, /:/); i++) { name = a_path[i] "/" ARGV[1] if (getline < name >= 0) { print name; exit; } } }
実行結果はこちら。
$ gawk -f which.awk xgawk /usr/local/bin/xgawk
find も shell に頼っていいなら作れるかもしれない。
副産物
#見えないじゃないか! by シャア BEGIN{;;;for(i=1; i<= split(\ ENVIRON["PATH"], aa, /:+/); i++){n=aa[i]"/"\ "" "#""#"\ ARGV[1];gsub("#", "", n); ;if( getline <\ n> 0){print n; exit; }}}#end
トラックバック - http://d.hatena.ne.jp/Rocco/20080410/p1
リンク元
- 9 http://gauc.no-ip.org/awk-users-jp/blis.cgi/DoukakuAWK_168
- 2 http://reader.livedoor.com/reader/
- 2 http://search.yahoo.co.jp/search?p=shell+getline&search.x=1&fr=top_ga1_sa&tid=top_ga1_sa&ei=UTF-8&aq=&oq=
- 1 http://api.awasete.com/showrss.phtml?u=http://d.hatena.ne.jp/Hexa/
- 1 http://api.awasete.com/showrss.phtml?u=http://d.hatena.ne.jp/MAROON/
- 1 http://api.awasete.com/showrss.phtml?u=http://d.hatena.ne.jp/Weekender/
- 1 http://api.awasete.com/showrss.phtml?u=http://d.hatena.ne.jp/harau/
- 1 http://awasete.com/show.phtml?u=http://rtfm.jp/~tota/diary/
- 1 http://d.hatena.ne.jp/keyword/awk
- 1 http://d.hatena.ne.jp/t2y-1979/
