しゃある通信

#22-03 sh script
おお、read を使うのか。 しばらく sh なんて触ってなかったからすっかり忘れてた。sh の文法ってスマートじゃないけど、 perl みたいなデカいプロセス呼ぶよりは sh でできることをしましょう、って感じでいいですな。 確かに perl 呼ぶのはイヤだなあ、と思っていたので。

さんくすでし。…仕事の合間にちょっと逃避して修正。

*** rcdiff.sh.old       Tue Sep 21 20:51:05 1998
--- rcdiff      Tue Sep 22 15:45:44 1998
***************
*** 14,16 ****
    cp -p $NEW $OLD
!   perl -e '$/ = ""; for (1..9) {!($a = <>) && last; print $a;}' $TARGET > $OLDTGT
  fi
--- 14,29 ----
    cp -p $NEW $OLD
!
!   (for i in 1 2 3 4 5 6 7 8 9; do
!     while [ 1 ] ; do
!       if read line; then
!         if [ ! "$line" ]; then
!           echo
!           break
!         fi
!         echo $line
!       else
!         break
!       fi
!     done
!   done) < $TARGET > $OLDTGT
  fi

う〜ん、sub shell じゃなくて関数形式にした方が綺麗だな…。でも関数使えるかどうかわからんし。 関数にできるのって ksh は確認してるけど、どの /bin/sh でもサポートしてるのかな?

あ、関数になってる(汗;)。



マクロミルへ登録

© 1998 Kazuya 'Sharl' Masuda
(C)Willoo Entertainment Inc. (C)Konami Digital Entertainment 株式会社ウィローエンターテイメント及び株式会社コナミデジタルエンタテインメントの著作権を侵害する行為は禁止されています。 0.035165 cached