From owner-FreeBSD-users-jp@jp.freebsd.org  Tue Aug 28 19:24:33 2001
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id TAA70272;
	Tue, 28 Aug 2001 19:24:33 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from gale.nintendo.co.jp (gale.nintendo.co.jp [211.8.190.211])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with ESMTP id TAA70267
	for <FreeBSD-users-jp@jp.freebsd.org>; Tue, 28 Aug 2001 19:24:33 +0900 (JST)
	(envelope-from shirai@nintendo.co.jp)
Received: from sky.nintendo.co.jp (sky.nintendo.co.jp [10.100.1.2])
	by gale.nintendo.co.jp (Postfix) with ESMTP id 86C0A153EA
	for <FreeBSD-users-jp@jp.freebsd.org>; Tue, 28 Aug 2001 19:24:32 +0900 (JST)
Received: from pon.nintendo.co.jp (pon.nintendo.co.jp [10.115.1.1])
	by sky.nintendo.co.jp (8.9.3/3.7W/2001081710) with ESMTP id TAA09967
	for <FreeBSD-users-jp@jp.freebsd.org>; Tue, 28 Aug 2001 19:24:37 +0900
Received: from nintendo.co.jp (IDENT:shirai@localhost [127.0.0.1])
	by pon.nintendo.co.jp (8.9.3/3.7W/2000112417) with ESMTP id TAA28218
	for <FreeBSD-users-jp@jp.freebsd.org>; Tue, 28 Aug 2001 19:24:32 +0900
Message-Id: <200108281024.TAA28218@pon.nintendo.co.jp>
To: FreeBSD-users-jp@jp.freebsd.org
In-reply-to: Your message of Tue, 28 Aug 2001 18:10:10 JST.
             <3b8b5ff2.7825%mya@guru.gr.jp>
Date: Tue, 28 Aug 2001 19:24:32 +0900
From: Takashi SHIRAI <shirai@nintendo.co.jp>
Reply-To: FreeBSD-users-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+010328
X-Sequence: FreeBSD-users-jp 63865
Subject: [FreeBSD-users-jp 63865] Re: foreach
 =?ISO-2022-JP?B?GyRCJEokSSRHMzpFdiVHITwlPyQsJEokJD5sOWcbKEI=?= 
 =?ISO-2022-JP?B?GyRCISYhJhsoQg==?= 
Errors-To: owner-FreeBSD-users-jp@jp.freebsd.org
Sender: owner-FreeBSD-users-jp@jp.freebsd.org
X-Originator: shirai@nintendo.co.jp

$B!!$7$i$$$G$9!#(B

In Message-Id <3b8b5ff2.7825%mya@guru.gr.jp>
        Shigehiro Miyashita <mya@guru.gr.jp>$B$5$s(Bwrites:
> $B$_$d$7$?$G$9!#F10FB??t(B :)

$B!!K\Ev$K!)(B


> > $B8=:_(BC$B%7%'%k$rAH$s$G$*$j!"%U%!%$%kM-L5H=JL8D=j$G(Bforeach$B$r(B

$B!!(BC shell $B$r$G$9$+!#$5$>BgJQ$G$7$g$&!#;d$O(B Bourne shell $B$N8_(B
$B49(B shell $B$rAH$s$G$$$^$7$?$,!"2?$@$+$s$@$G(B 3 $BG/$/$i$$$+$+$j$^(B
$B$7$?!#F;$O81$7$$$G$9$,4hD%$C$F2<$5$$!#(B

$B!t!!$(!)0c$&!)(B ;-p


> > $B;HMQ$7$F$$$^$9!#$7$+$7$3$l$r;HMQ$9$k$H!"2>$K%U%!%$%k$,B8:_(B
> > $B$7$J$$>l9g$OL5>r7o$G(B
> > $B!V(Bforeach NoMatch$B!W(B
> > $B$N$h$&$J%a%C%;!<%8$,JV$j!"$=$l0J9_$N=hM}$r<B9T$9$k$3$H$,$G(B
> > $B$-$^$;$s!#$I$J$?$+NI$$J}K!$J$I$,$"$j$^$7$?$i$465<x$/$@$5$$!#(B
> 
> man test
> 
> $B$r$I$&$>!#(B

$B!!;d$O!"(Btest(1) $B$O:#2s$NLdBj2r7h$K9W8%$7$J$$$H;W$&$s$G$9$,$I(B
$B$&$G$7$g$&!)(B


$B!!0l$D$K$O!"(BC shell $B$K$O(B test(1) $B$NI,MW$OKX$s$I$"$j$^$;$s!#(B
$B2?8N$J$iAjEv$9$k5!G=$r(B builtin $B$G;}$C$F$$$k$+$i$G$9!#Nc$($P(B
$B0J2<$N(B C shell script $B$OF1Ey$NF0:n$r$7$^$9!#(B
	if { test -e foo.c } then
		echo OK
	endif
	if -e foo.c then
		echo OK
	endif
$B!!(BC shell $B$N(B if $B@a$K$O(B test(1) $B$N0z?t$KEO$9$N$HKX$s$IF1Ey$N(B
$B$3$H$r$5$;$i$l$k$N$G!"IaDL$NMQK!$G$"$l$P(B test(1) $B$r;H$&I,MW(B
$B$O$^$:$J$$$N$G$9!#(B
$B!!F1MM$K(B @ $B$GBeMQ=PMh$k$N$G(B expr(1) $B$bM>$j;H$$$^$;$s!#(B

$B!!$b$&0l$D$K$O!"(Bglobbing $B$N%k!<%k$,(B Bourne shell $B$H(B C shell
$B$H$G$OA4A30c$C$F!"(Bmatching $B$K<:GT$7$?:]$K(B Bourne shell $B$G$"(B
$B$l$P85$NJ8;zNs$r$=$N$^$^JV$9$N$KBP$7!"(BC shell $B$G$O$=$N;~E@$G(B
$B%(%i!<$K$J$C$F$7$^$C$F@h$K?J$a$J$$$N$G$9!#(B
$B!!:#2s$N<ALd$O$3$l$K5/0x$9$k$H;W$$$^$9!#$D$^$j!"(B*.zip $B$rI>2A(B
$B$7$h$&$H$9$k$H$I$&$d$C$F$b%(%i!<$K$J$C$F!"(Btest(1) $B$@$m$&$,Fb(B
$BIt<0$@$m$&$,$=$3$+$i@h$N<B9T$,=PMh$J$$$+$i$G$9!#(B

$B!!99$K$b$&0l$D!"(BC shell $B$G$O(B "" $B$NCf$G$O(B globbing $B$,9T$J$o$l(B
$B$J$$$H$$$&FCD'$b$"$j$^$9!#(B
$B!!(BBourne shell $B$G$"$j$,$A$N(B test(1) $B$r;H$C$?0J2<$N$h$&$J5-=R(B
$B$O!"(BC shell $B$G$O(B glogging $B$NBP>]$H$J$i$J$$$N$G0UL#$r@.$5$J$$(B
$B$N$G$9!#(B
	if [ " *.zip" != ' *.zip' ]; then
		echo OK
	fi

$B!t!!(B"" $B$G3g$kM}M3$O!"(B*.zip $B$,J#?t$N(B word $B$KE83+$5$l$k2DG=@-(B
$B!t$,$"$k$+$i$G!"F,$K6uJ8;z$rF~$l$kM}M3$O!"!V(B!$B!W$H$+!V(B-$B!W$H$+(B
$B!t$G;O$^$k(B filename $B$K(B match $B$7$?>l9g$NMQ?4$G$9!#(B


> C $B%7%'%k$G$O$"$j$^$;$s$,!"(B/etc/ $B$N2<$N%7%'%k%9%/%j%W%H$J$I$b;29M(B
> $B$K$J$k$+$H;W$$$^$9!#(B

$B!!(BC shell $B$@$+$i$3$=LdBj$J$N$G$"$C$F!"$=$NLdBj$,(B C shell $B0J(B
$B30$N(B shell script $B$r;29M$K$7$F2r7h$9$k$H$O;W$$Fq$$$N$G$9$,!"(B
$B$3$3$G$O(B man test $B$d(B /etc/ $B$+$i2?$r3X$S<h$l$H8@$$$?$$$N$G$7(B
$B$g$&$+!)(B
$B!!;n$7$KA[Dj$5$l$F$$$kLOHO2rEz$r5s$2$F!"$=$3$XC)$jCe$/$?$a$N(B
$BF;6Z$r<($7$FD:$1$J$$$G$7$g$&$+!)L^O@!"(Bman test $B$+$iC)$l$k$s(B
$B$G$9$h$M!)(B



$B!!$H$$$&Lu$G2rEzJT$J$s$G$9$,!";d$O(B C shell $B;H$$$G$O$J$$$N$G(B
elegant $B$J2rEz$r;W$$$D$-$^$;$s!#(B
$B!!$=$b$=$b(B C shell $B$=$N$b$N$,(B elegant $B$J(B shell script $B$KD9$1(B
$B$?(B shell $B$G$O$J$$$N$G!"$G$C$A>e$2$G$9$,$3$s$J(B ad hoc $B$JBP=h(B
$B$G2?$H$+$J$i$J$$$G$7$g$&$+!#(B
	if { echo *.zip >& /dev/null } then
		foreach ZIPFILE ( *.zip )
			echo $ZIPFILE
		end
	endif

$B!t!!(Becho $B<+?H$O<B9T$5$l$J$$$N$G!"JL$K(B set $B$G$b(B @ $B$G$b9=$o$J(B
$B!t$$$N$G$9$,!"(Bnull command $B$N!V(B:$B!W$@$H0z?t$rI>2A$7$F$/$l$J$$(B
$B!t$N$G!"$3$3$G$O0lHVI{:nMQ$NL5$5$=$&$J(B echo $B$r;H$C$F$$$^$9!#(B
$B!t!!B?J,(B C shell $B$r>oMQ$7$F$$$k?M$J$i:GE,2r$rCN$C$F$k$H;W$&(B
$B!t$s$G$9$,!"(BTIPS $BE*$J$b$N$rC5$7$F$_$F$b8+$D$+$i$J$+$C$?$N$G(B
$B!t!VF0$1$P$*$C$1!<!W$G4*J[$7$F2<$5$$(B :-)

                                               $B$7$i$$(B $B$?$+$7(B
