ruby - ã¯ã³ã©ã¤ãã¼ã®æ¸ãæ¹å ¥é ane,apeã ãã§å¤§ä½ããã
ãªããæµè¡ã£ã¦ãã¿ãããªã®ã§ãã¤ã使ããã®ãæ°ç¹ããã¦ã¿ã¾ãã
rubyã§ã¯ã³ã©ã¤ãã¼ããã¨ãã«ã¯-aneã¨-apeã ããã¼ããã°å¤§ä½ãããã
æ¥æ¬çã¾ãã ããã£ã¦æ¥æ¬èªã¯ã»ã¨ãã©æ°ã«ããªãã¦ï¼¯ï¼«
ãã¼ã¿ã¯ä»¥ä¸
$ cat > d.txt 1 ã²ã¨ã¤ã foo 2 äºã¤ bar 3 ï¼ã£ã¤ã buzz
çãä¸ã®ã«ã©ã ã®ã¿ãæã
$ cat d.txt | ruby -ane 'puts $F[1]' ã²ã¨ã¤ã äºã¤ ï¼ã£ã¤ã
çãä¸ã®ã«ã©ã ãä¸ã¤ã®ã¬ã³ã¼ãã¸
$ cat d.txt | ruby -ane 'print $F[1]," "';echo ã²ã¨ã¤ã äºã¤ ï¼ã£ã¤ã $ cat d.txt | ruby -ane 'print $F[1],","';echo ã²ã¨ã¤ã,äºã¤,ï¼ã£ã¤ã,
æçµã«ã©ã ã®ã¿æãåºã
$ cat d.txt | ruby -ane 'puts $F[2]' foo bar buzz
æçµã«ã©ã ã®æååé·ã®ã¿ãåºå
$ cat d.txt | ruby -ane 'puts $F[2].size' 3 3 4
æçµã«ã©ã ãæååé·ã¸ç½®æ
$ cat d.txt | ruby -ane 'puts [$F[0],$F[1],$F[2].size].join(" ")'
1 ã²ã¨ã¤ã 3
2 äºã¤ 3
3 ï¼ã£ã¤ã 4
æçµã«ã©ã ãé転ããã
$ cat d.txt | ruby -ane 'puts [$F[0],$F[1],$F[2].reverse].join(" ")'
1 ã²ã¨ã¤ã oof
2 äºã¤ rab
3 ï¼ã£ã¤ã zzub
å é è¡ã¨æçµè¡ã§ä½è¨ãªãã¨ããã
$ cat d.txt | ruby -ane 'BEGIN{puts "*ãããã"};END{puts "*çµãã"}; puts $F[1]'
*ãããã
ã²ã¨ã¤ã
äºã¤
ï¼ã£ã¤ã
*çµãã
ï¼çªç®ã®ã«ã©ã ã®å¤ãè¶³ãç®ãã
rubyã®å ´åã大å夿°ã§ãããè¡ãã$ãä»ããã¨å¤§å夿°
BEGINãå¿
è¦ãªå perlã®æ¹ããã®ç¹ã§ã¯åªãã¦ããã
$ cat d.txt | ruby -ane 'BEGIN{$a=0};$a+=$F[0].to_i;END{puts $a}'
6ãã®ããã«ç¾æç¹ã§ã¯rubyã¨perlã«ã¯ã¯ã³ã©ã¤ãã¼ã§ã¯å¤§ãã¦å·®ãããã¾ããã
éã«å¾ãããã¡ã½ããããããç¹ã§è¿½è¨ãæ¥½ãªæãããã¾ãã
æ§è½é¢ã§ã®è¨åã¯ããã¦ããªãã
æ¥æ¬èªã®å¦çãèããã¨awkã¯ç¢ºå®ã«ä¸è¦ã«ãªãã¾ãã
ããapeæ¸ãå¿ãããã¾ããããã