Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!mailrus!iuvax!bsu-cs!ibmbin
From: acornrc!bob@ames.arc.nasa.gov (Bob Weissman)
Newsgroups: comp.binaries.ibm.pc
Subject: "which" program for MS-DOS
Summary: which.arc, "which" program for MS-DOS
Message-ID: <4035@bsu-cs.UUCP>
Date: 21 Sep 88 05:00:16 GMT
Sender: ibmbin@bsu-cs.UUCP
Followup-To: comp.binaries.ibm.pc.d
Organization: Acorn Research Center, Palo Alto, CA
Lines: 291
Approved: dhesi@bsu-cs.UUCP

This is the equivalent of the UNIX "which" program for MS-DOS computers
which use COMMAND.COM for command dispatch.

I.e., typing "which foo" will tell the user which program called "foo"
would have been executed had the user typed "foo".

Uses the PATH environment variable and the known fact that COMMAND.COM
searches in the order .COM, .EXE, .BAT for executable files.

This program is released into the public domain.  Enjoy.

Bob Weissman
Internet:	bob@acornrc.uucp
UUCP:		...!{ ames | decwrl | oliveb | pyramid }!acornrc!bob
Arpanet:	bob%acornrc.uucp@ames.arc.nasa.gov

[
Comments:  (a) PC-DOS 3.1 will accept the command "sdir.xxx" and give
you sdir.exe, sdir.com, or sdir.bat, but "which sdir.xxx" won't.
(b) If you give the command "which \bin\junk" or "which /bin/junk"
the output is badly formatted.

The executable program (which seems to be compiled with some version
of Microsoft C) and C source (probably specific to Microsoft C) are
supplied.

Uudecode this article normally.

checksum     size (bytes)  file
   64712        15548      this uuencoded posting
   15806        11264      which.arc

-- R.D.
]

BEGIN--cut here--cut here
begin 644 which.arc
M&@A72$E#2"Y#`%Y>7EY>JP@``"D1&IC`PM(0```,+U0T4`"BX!TT:<:@<3$&
M1(L6(.#(2>.&#HB#"=&`,).&39F+'=F`.%/&8AD\9<;4H5.&C(N!`PN"*.+B
MC`L6($1@5+CQS1L1(-F(E$C1(ATT'\W4$1HQS%$W8=I\?&,F9L&C23M^W*GQ
MSINE9$:6!'$RY1"P;`-;;HP<.'`$EIG$HN?1L#?**5.&
MS>BW+7&284QGHIBS9'"J!M$FL=HT+6DG`3$]C-#1G-V'V?=1&&)\95$8(+SAQD=EV%&&&Q2=`0(:D*WQPT`JO`"3`B-0
M-`8;=2@&`@]ST$%&9F*X@(8/`X7HQH@E?H2BBFF\X2*,((I(HHDW3N2&32_&
MZ&.-)\Z1QQQ#$&RRQA:%12('`4&=#6X4!9TJ$98FZD
M>!B&FLJJL/Z.::XUF+;4%$@?+FI8<3"
M,&ZY#:4HAW\6M1K:KN,.U&<+D!BQK8=\VCK$&W!UG
M,+=,??X9Z%&.SB'B5A]A**&?3U"1%I4UAL7#QD_N**A3=H$`!AUOK'Q'7">D
M91BH=BM]
M5;M:I2J2EMIE;`[IZQ.#XE"'A*SA40#JB5S<4`?BM(PJCWI90E*'*_NE$"-\
M(Q\=21D
MX=)`)Q32#8L?T6(-`]5P9$R"22Q7#G(0MI*"E`:"QS@5)&6K!&$\&0.V)H#1Z!D*&0E:E&&BE84[:.0
M@?S+(X:!(K)TXQ*+EBIEEF$:'4[@L:4,Q5M0DL5E3*<
MD&IE6"''-LWM4H>+I/$7`$GBU4Z?]6'
M#BCPJU,"VYTQ1(R778VFNF;YS!0LBPM<$(%C-Z*5:M(-HF_M3KMJ2DQDRL$C
M;D"L5-#GSK9>;IY%:9GQF,@4T03*47FR(MWFB@(UU!4$MKWD##2Y`C5TTIN"
M!6Q-<:(K7J7!5UM00QR5;,_:AM+&%XEQM>T^ZW;=/^5W+
M7+767YEL=Z=UBM_]'%*_@"K`D&7@J$;F"@:LNF`/%EU4M/K0.M"T127\FY!%
M&@@]U>0!)P?.684&`L,"3MBE7)4I:&C:U=8=55=C4.HT>J3:_K5%.:0A3NTR%FM0EO;4A*W<-MM7GW+
M5WSZ];##A;)7CQETSG&MG-TJ6N=?-51@.D.$`Q.*8^"_+G
M!`^$GP_V9X-EEF@0-"GTCN33
M]15U3-Z+WWW^&'64OEAGVA+QTIE\,U&%^4'7C;L!XMH^%UR$E$&1*PPA,AH(
M5TA)0T@N15A%`%Y>7HXA```I$4R8O%Q[*@``#$VT[`%@`0`!`"``F`/P[U\[
M`0`0(/+A;@```!XN`@@`@`P`'`+R600PZ"``?!\A0OH'`-*X*HO8#6(GX(J5
M%?9RV"%`AX=.`W1N#/*#(`"?&(O\$%C'`1*`1<:,Y#""P,^&15X,_#-B0-$!
M3%#03=,PB)@`1`6.8#4`Z`>`.MT2*5WTS=@!`%Z^+"K799A3F#+9*;"Y:.SDNDF*&!Q:$61P,7UL"%L@)&:7EZ[Y@1
M?1<'^5@,P$\5U_8NKCO@%%"/'70,'/']MMZB8RN,)3*"#TC8:1908[4WP,/J
M1`?^V<%G97KUU?]NH&OQKRS;'@#H2%![;Y`1>P*VZ@L-8*H^/KGR[NW[-^9,
M!C;AE(,-B_TQ0#H9!`#5:,O9XYUU3WU`V#Z,8.,(,(49D$M#,P`CCROW1+-"
M/H<@=DPTZ[$"0RH?0$V$P$!VN,:/W:62=@]'AR0%`%4#GIEB8LN*296_.@Y[")])KOC
ME5D>NF6B1S8;9EZ/1GH%.N!X@*FF=23@*5YZA>H>/P(8,8@_K#JUPJWMYNH?
M.V[8A`L8`(3U!0:HC8(%`.B&X0M'.A%@8#HL'1;-.0/XX:8?EBQB!`%(+$?)
M`/`T8@0GDM:`C@WE$9,I,'1,(#+)_]2`2QD!HP.'`>:M`X%36%D2'BYSU)P5
MIH,<(X![EL3G!"5U'+@*8[W\8\/!Z'S0#VH+U[>3'VM(3+'%'CAY7JZPI'0G(C0AC"&"%R<^,U`Q.
M`40;C?311F"BM"1UK"*@K'YHX/4B$/X3`SJZ3(!:T?$.6*`Z4J^&CBFBFW4O
MKJ+2`D,S(?`@P!P"-`/"+S0(L(@-$*UP3R#^``"!'`/X8KP^CEP3"#&.++#/
M'!!8\`$Z]P3085@[X?(/$[0/0HX_-B1B@B@`E&^")T\9$PL!TX"#A`VC<`+`
M`/]8`(!B&``+!&"$-F:P#91Y@`H$F$,!
MK)>.)@3`!F[D0ARUL8L;_N..!+#>&=.8&#:.PP:.",8,_F$"XM"!!;E@``!\
M00\`S,,4=%C`AOY0I3ID8!WE,$"Q/K"(>_R"`P%@!28BP0I_L"P`2%"%..YA
MO5T`90#H0`!:^(!V0Q"'/-!QE[+1
M`GPA$",9#[`+B!P2CQXHA@6FN$7:?0`0/O`!1^C0``^`X@`&*?ZPK+"P0
MP+J\,(Q'&``)`=`%1'!@@272(06+#(`)SLC&*N)`>\#(Q#\!,YV&]"T=/P!`$P>P#KRX)0A
M%WG"U=U&>J_!7C&\UPL#OO!]!Z"*_7H8P'0(<7!@P04+KB,:?$:1!>=@`%B(
MH,[%F'!W7?!>%0SX%AJF\SHZ[%\\Z[G0?:YS-@*=CD%;PM!U;D:5K7>,NS#$
M!*@%3!6BK+UD('@1Z5A$/I*P1H39@PX0<(0Q*ND#C03G0T7XK3Z*<`D@D``Q
M_8A&.0:@4@G](@']+`0`]/*,1001'XEP`0F+Y0AO+#8)XYA`('BP@R$P4RX`
M*$(1E,QD?8BC'6_:8!?V$\Z86.$*Q5K$&'VA!@*T8@?"P#40+$$'!ERB0XAJ
MY3K688DO>&$_PH`(8*Z@'76:&:`9#3.BK@%'L0`6>AM`(Z8#``
MU`"!#@%(E3$0,"`\W,X4+&:(@^&H<*
M8#GX,#WJ#2#_UR\`$$PP``B\]X]T0"````$`"+SWCW1`(```D`#8(V(@0)UW
M@)@8$`"(C(%W*X`E(B)@$;Y$?O@--,"@SI=%W@*M`Q,@UH!I^Q8-BS9N`#:6
M]@X!$"!_:`+0,7`3CL$9_^SH0S*_B()4(`2-BQ^!:=13(QZ3\_$Z[\HT,@Z-!&"XX:2&2$WSH-
M`(G0`KBX2WX'LR,K)H
MX`8$PU]@)FE_N,P$!3I<,$#76&`=08!2L`'RA`&]>>&/66@)8%QJ7A#@H`%B
M&>&/8PJ.->%9RB&XR#R+,);(`10"`(`7BY@WC'KLL4,`?'9T]E14.!F$P#$>
M7K4.`P'U9!`)0/H34`(;=9172".5=%)**[7TTC@QS:03`1&M4\,BQLPGY33V
MX:>X/X00``=&P1B!\&
MY$3'`8<:X%,==HQE@")''(#)@&`\0!>#9,1G@)A]E9G??N#T)Z>'01F`SA)S
M(26B6@"TN)P7!IP845AS$K"."ACR](=6`!2P:""_+ED'!I1:.F`!FB+%8`*I
MHH-`JP+P>9Z?-EZ!(Y?_*$(0"0/P($`=1MB%EUY1]D4E8%=F2=@)BW"I8FE*
M^;%!=)QYJRPZ8R0@V@ZE+8HG"+_\\T^*8!%P#$4N,D=>C->NAPL9`:`30C[:
M+F*'`8T8XHD_H^!10'P(C(+&R,*-PD4!QQ@@1W^Q.@IS.GPPQ$,)VZ6#A0`M
MTU&`.!DB_A`*.!0@!4-(E$%$$`ZTA"`@#@%:2V3FHMP
MH0``#.@/`:!+.J+00@#@`G[P<.%3"N"4`OJ`:0)LF1W0=X"`*!%FL*N:SP:%
MO0+CPPE,5\+2W(UJA$I`RT!7-@D$9!`NN%SI+J>4
M/@@@:)<[X@?U,*%#FR(CF<,@"Z!X@>A1'#&_M"A`O'A1POZH[H"
MU/&.P*CD.IH8,S;"\60$Z",A?4&M='S@'Z),QPO^41MTB",`Z5#!/[:BG'7,
MPX6VL!\Z
M^'Q`/0WA`%DX`!?WU.<#\"!0302TGG+0E`]>1J@)>+,_=8"`.`M`3G/6X199
M,<(Z,A&0$1;@83)*SWK:@P%M!8H`"N#,"PM010$LJHH0J(,%/`C"`RSB"J?B
M1R*LX`\]%D!7*K@;T@@5`9J.[`!=3!+<')":#QXU$UW<:4]1*("[R9`.#8CD
M`CSDL_CH"I.CX,/(;"`RH4(TJ'[P1^A(<%(%U.$"QB!`"XP0R47P%'6#D`8`
M[J&-J/(42/BH)$$>_S""/$P`B!\0J@)&V($S_`"!=;0C
M($9P,8QE3&,;UP%%/KC<"GKJ`S36X0":]4`.D6(%SP0%'^AXPY0-T$A"01D=
M`YARM>Z>U
MM`]T5X=,DW73JO"T3W]D`+&ZB+F6?*ZP)N#H?UB`%9YFD'5KF5UI!0!B,UJ/
M%>[&T#J\8*+_>((`\.``\"SB!O\X`&[%LXX%!&0*BD5')>QQE,8\V2DO,ZT0
M2>B%[P(`6P(PZ4(AF@2-+<@>?A#".OAF@Y49^FKHZ`*W.0<$.(-[9,9P0KUF
MZ@%[*QL/VP#%U1;Q@V@CH@#4Y@:Q(6I3X01`9MX-=HW2C:/*KEMO4%@'!PR]
M,A<3P`2*V-<_ZM'M?NOH93$62\`9U`%D'YP:)D>Y30L^LH9+&^+D6(WTPMF-]T<02^"+4=O+%)5)%;%A;3I(+`)=Z
ML!0IZUT!/E8@J"X?JW!U<"C5"^`U!K#"<9WH*5+^X01\W&ULTJ\J>>DP87WH;0#HJ('C'3EA1=8!
M],F\\C31,0V]<[GPA&H`V+.FV3!D/N-WRYO/<+&"L@T`%UD;T`$RCQX?DFU`
M^^@F4NXF5OO>S6B)QT4`L[(5/!"R&\H70/&QM5@<4<]#RD&;"NK00:&"X[SLVQBOX!]I@P(<:H"T'?X!!#O)H`$!\#(!D@"[<@]&
M,"V`0`=($"@U1`<:,`/)L`C1H"="T`PA(`=+0(0*@!9UX``#8`0&,`%6@`!Y
M@`(!8@'YL`XV(%5=!(6R,84AT(5?&(9YD%5.X`]V!2<`X(;K@`UV52M.@`#!
MH0"TX(8O`PBGT!K]D`[%(`_8$B$$P(,^*`<'$(3YD`ZO(`^LX1K1U89."(54
M*`?KD(E'Z`9]Z`$',`,2X2%=Q`\9HP^+\&%F$!E_.`Y4``L*(`^N4`=*@`[4
MX$"H$$%)Z!Z+P`VZ,!,]@`(",`<#H`N`H$7BL`C4L`CZ8`$V]8>LP`,IQ0`[
ML`]TD`&J(`[T@`XC4#9A``L-L(VGAPX8``"J8(N1ES[HT`!E(P[DL0Y5L`Y%
M@(KIT`GML@)J$HODD0[1$`^+\(<+D`S5M0C!
MH(@N:04&8)!42)$6N0[DH!1U``X920<*L`C:T)$?N0[/()(`0)+)D`6A8`0!
ML`/$,`<&L`+$@#K_$`ZHN`[Z0",(L@#;P!D.X@^_UB?"=@6[X`A5960I8(JX
MT!_H,`<&40"HF`GK0`)`0`(@PY:C$!`"8`G'0`#*,0AQM3#^X%B)8`.44!$J
MR`C8X`C`@`X)``!?<(/IX`P`$`1TH`^`$`X]E0_N,`?RL`AW(`#\T`K%A`HZ
M(01(L`/!,`>0!`T#``^MP)IT0`,#(`PIM!SW,!'^L`[F4$QTP``#D`^)P`3^
ML`+!0!E840#'Z0_*"2:,H`V,$`T[$`T^8P*,X`&<("=_H'TF8`P&(`H"(``]
MX%AT4`+%5)NWJ1.EZ0^O&9N]L`BT:9NX*0Z[V9O8!)S"*1D(P"`$X`C8L`X4
M8`+^X`#F20<1`)F,<`T[<`S;Z0@>@`D5<0/KP`NF:0"HB`Z3MP/&@%4D$`!`
M``28@`Y>$'O^T`3^@`X.J5U4`ZHF`7#(`51@`X=0"@E54R+``\#(`^(J9AW4"O6L`+7
MH`2)4`7^@`59H`7#,`50,`/2X`%2(`50<%U08``?@`X/T"J5I0__\`%:L`5T
MD!32,`SGEI9#Y`5S``.&20`W@:L4N0#20!7I]`]X67/:,`C#\`#1L`U]
ML0ZT@`2?F`Z2@"M4(">W"@"H>`"7"6POR0#8E`-,X%(&$E?)JC?R<(8@J`T#
MP`%RD`.+,`V.$`R\2A4YX)T`,`P^H
MZ++9,`#+0*<;,P^FX"W_X(0Z4`3_<`<$P!E)D`0O2Y,9EP[*$:KLD#$Y]T0<*0(57$+.C44(>G`@@'*BC0<*/4`0*(`=':P]M(8[M<%[+44)UP`#G
M*B/S!0@4APY^YA1$C(-FIBVXH`X#L"R_Y"KP0+VGEPZ/H#7C6\4R@0L#8$-5
M9@/\`'H)X'I]Y`"9X*B&.0!PL069YZCH4`H&,`KV,`")8`'X4*0'\PT#X`TU
M1B@?4+5[G'*8L`C84+P"0`!UD`"`S,<_T'Y',`C_,`!\P(=ZS,@WQL4VQ!Q7
M&ATVX`^@=PK*9P";Y$&>#"ND_%L_$``;``Q`,`KZ,``!7",&H+@$,`A\@``#
MT`?`0X("Q'"PS+RQS\H'2(VQX@
ML,$;PPC0()EE3:[`T`A^``[SL`JL\-T4T('((&>?>0#2``Y]\0X(,`3@L`[G
MX&ZL4`*`1`?W91\T'@XVCN,G\0XBP.-T8`X]_0]!?!XO693"T8.PT$``,7
M:`>'?`)C*PP+,`QU(`X/]P2L8`BW103_T--3>0QR(`]8,.5/NQZTD`.F12.T
ML`-V10!4F`X:D`Z8K@.;OI/QT`/L4P?L(`F3D')#,+Y$R0,_@+GC%P^R,`"2
M<(;50".IHEBMU!^BX;SL``:*BP#/`0H6@7@/5AN/F@&$]`;[(!KBX1C"`1Z-
M\7!'8`P%H`/77@!<<.U&$`]'`!YW9@\8@0_/(0[.803P,"!0\.R<4^P#H@OY
M0!?2#@XJG&EU\`$@Z@<5`0]P00#W<"`,]@^)W#()2:;KX`$!@1$&D`-V``Y^
MP#L&D)`B\+_5!N^:103SSCDB^.'L,,M6`![B(74J#`A]$``Z<'J#<`P,T0-<
MX#/(]`)48?+*$5WVL,XQM3W)5%VX4*(S&""`4*@`M!!
MX`Q`L!S&4`+`,";HL`#P`"9P7Q(&,`US7_?&T/'8P@2TK,*XL`17#Q>$,/98
M9?`!@!;/F@Y9T$.U\1RT\*@:0$CZL/$&8`Q&,`].`"3V<`,`D`AV8.Z4G>[R
M,"#SVFU;@_)UL`$#6,B'8+PZ82G*"RS#,Q]E$P'*C@O,/B"Q@/G13AKB$"CP
M0"AH@`LJ"`5P(0"(3PC/2AO`$!UVT-CV$,JD`0Y`R1UJ\`]PP0G9IY$I$!3@
M@`X!D7WBCPXVP')(H?G)``%0!PVDX0Q`P@PA$/I&H`SKT``N]/#H8`'JKT+Q
M=RM%("L^,@@%CC60=-R`:5Z\`(#5H,@6$
ME#IN6E!)TZ8,""9IQ,@)(R9-F]5E\)19+28,'0``A``X`H!)W`-<,@:A@@1`
MB3D@S+S!2T8'B.,*C"-W\T:R(0.@)P`!
M<>%A(`#N04('/@&@X$8=;+"1`@!"$FDD`"L@-D)<$X`@(0`P&%#EE58:\!L(
MD"2`PI=?H`0!8`W`&`)0#0`L`T
M`,@#``0!O!!`$P&P$0`5A&8T!149$4$K('#@9J`[`\@SP!1X-?&&&U344<85
M99!!!1IU&.'8%+8!H$08;AA1AAA-$!8$'')DFX<2>('+1A!UG#%%&7`\,08=
M3KQA!Q%EC(&;"['-YD)MM['F&@`_J+#:"\&9244"//#@!%U'^.`#;E+8`,/#
M#2B`V!QTA#'&&B"X6X8<9K#QQAT1`U!CPP_/$#%B:;A!1QEG;`P"&6G8D089
M?HEA&`PA)P``R3#D<')XU8%0!G7EH@'"''!8[)=R<@CMALRAN=&7RB'S`T#(
M)/.#L,@P\\=OV%;RF>``,<;*4LF'@@>AT$S&2$;R',,
M/P]9I-MPJ^QR&'/,\9C40].!-20#`!H`&AH:&AH:&AH:&AH:&AH:&AH:&AH:
M&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:
M&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:
M&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:
M&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:
M&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:
M&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:
M&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:
M&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:&AH:
.&AH:&AH:&AH:&AH:&AH:
`
end
END--cut here--cut here