🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

3 total messages Started by KENICHI POOH SHIMIZU Tue, 12 May 1998 00:00
Q:$ARGV[0]が展開されないようにするには?
#148
Author: KENICHI POOH SHIMIZU
Date: Tue, 12 May 1998 00:00
25 lines
1263 bytes
御無沙汰しています、元気(株)の清水 健一です。
さて、初歩的な質問とは思うのですが、方々のドキュメントに当たっても
解決できなかったのでこちらに質問させて頂きました。

------- test.pl --------------------------
#!/usr/bin/perl
print "arg = $ARGV[ 0 ]\n" ;
------------------------------------------

このプログラムで

$ test.pl *

と、すると、

arg = test.pl

などと、なってしまい、ワイルドカードが展開されてしまうのです。
展開を止めてほしいんですけど、何か解決方法はご存知ありませんでしょうか
よろしくお願いします。

元気(株)  術開発部
清水 健一
pooh@genki.co.jp
Re: Q:$ARGV[0] が展開されないようにするには ?
#149
Author: K.[NAO-NAO].Kawai
Date: Tue, 12 May 1998 00:00
25 lines
1379 bytes
かわい@きやのん

In article <6j9duu$rom$1@saint.win.or.jp> "KENICHI POOH SHIMIZU" <pooh@genki.co.jp> writes:

し>御無沙汰しています、元気(株)の清水 健一です。
し>$ test.pl *
し>arg = test.pl
し>などと、なってしまい、ワイルドカードが展開されてしまうのです。
し>展開を止めてほしいんですけど、何か解決方法はご存知ありませんでしょうか

#実行してる環境が書いてないから、わかんなーい。

UNIXの場合。

* を展開してるのはだれ(どのprogram)だとお考えですか?
shell が、展開してるんです。
だから、perl の program 側ではどうしようも無いです。

% test.pl \*
とか、
% test.pl "*"
とか、
% set noglob; test.pl * ;unset noglob
とか。
Re: Q:$ARGV[0] が展開されないようにするには ?
#150
Author: KENICHI POOH SHIMIZU
Date: Wed, 13 May 1998 00:00
26 lines
1607 bytes
はじめまして、かわい@きやのんさん、レスポンスありがとう御座います。

>#実行してる環境が書いてないから、わかんなーい。

すいません、説明不足でした。
動作環境は、SGIのINDYです。
perlのバージョンは、-vで表示すると、"5.004_04"と出ました。
シェルは、bashを使ってます。
こんな感じでしょうか?

>* を展開してるのはだれ(どのprogram)だとお考えですか?
>shell が、展開してるんです。
>だから、perl の program 側ではどうしようも無いです。
そうなんですか。
早速シェル上で、echo * を実行しますと、カレントディレクトリーにある
ファイルが表示されますね

>% test.pl "*"
これだとうまく行くみたいですね
ただ、「"」で括るのは、あまり美しくないですね
何か他に解決方法は無いでしょうか

元気(株) 技術開発部
清水 健一
pooh@genki.co.jp
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads