トップページ⇒php
1001コメント350KB

【Perl 】初心者コーナーPart7

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい01/09/12 13:04ID:???
いらっしゃーい、perlのコーディングで困ってる人のスレです。

1:自分はこう言う事がしたい。
2:それでこんな風にやってみたが・・・
3:それだとこんなエラーが出て上手く行かなかった。

1と3が無いと誰も答えられないよ、良い回答は良い質問から。
一緒に勉強しましょう。

参考書籍はこちら【【Perl,CGI】参考書籍 第2版 】
http://corn.2ch.net/test/read.cgi?bbs=php&key=988809842&ls=50
CGIの質問はこちら【CGIだけど、なんか質問ある?part3】
http://corn.2ch.net/test/read.cgi?bbs=php&key=988727833&ls=50

過去ログ、その他の役立ち情報は>>2-5を見よう。
0696名無しさん@お腹いっぱい。01/10/09 18:24ID:caK9Qd8A
変数の中にはいってる変数の名前からそれも評価するような
方法ないでしょうか?↓みたいなかんじです。

$bb="$aa";
$aa="ほげ";
print "$bb";

これだと何も出力されませんが
出力が ほげ と出るような方法は無いでしょうか?
0697名無しさん@お腹いっぱい。 01/10/09 18:32ID:???
eval (print "$bb");
0698名無しさん@お腹いっぱい。01/10/09 18:35ID:???
$cc = eval $bb;
print $cc;
でもいいっすね。
0699名無しさん@お腹いっぱい。01/10/09 18:38ID:???
>>696
$bb='$aa'; #あとこれをシングルクォートに
0700つーか、、01/10/09 18:38ID:???
1行目と2行目逆だよ 1行目で何が代入されるか考えよう
0701つーか、、01/10/09 18:40ID:???
>>699
それじゃダメだって、、それならシンボリックリファレンス使わないと。。。
0702名無しさん@お腹いっぱい。01/10/09 18:44ID:???
perl -e "$b=q{ok};$a=q{b};print $$a;"
0703 01/10/09 18:45ID:???
$bb="$aa";   # ここで$bbに$aaが入る。が、$aaは空っぽなので、$bbも空っぽのまま
$aa="ほげ";  # ここで$aaに「ほげ」代入
print "$bb";  # $bbは空なので、、、

ってこう糞親切?に書くと怒る厨房っているよね
0704名無しさん@お腹いっぱい。01/10/09 18:51ID:???
まとめよう。

方法1
$bb='$aa';
$aa='ほげ';
print eval $bb;

方法2
$bb='aa';
$aa='ほげ';
print ${$bb};
0705つーか、、01/10/09 18:56ID:???
ゴメソ>>699 eval論だたのね・・・
070669601/10/09 19:06ID:???
おぉぉ!この板でこんなに早くレスを頂けるとは
思とらんかたです。しかもこなにイパーイ!
なるほど!どうもです。
1行目と2行目が逆なのはこの手法を説明する
為だったんで…。これと全く同じというわけじゃないんです。
わかりにずらかったですね。スマソです。
0707名無しさん@お腹いっぱい。01/10/09 19:07ID:???
似たようなシチュエーションだけど、
「文字列の中の変数名」をあとから展開するってどうやってます?
おれはこんなの。

$template = 'hello $name!';
$name = 'ほげ';
print eval '"'.$template.'"';

いちおうこれで動くけど、なんか無駄な気が。。。
0708JAPU@勉強中01/10/09 19:11ID:???
$str = '$hoe';
$hoe = "sakura";
$str =~ s/(\$\w+)/$1/eeg;
print "$str\n";

ってのもアリかも。
070969601/10/09 19:11ID:???
アセンリ言語でいう(0010)とか?
みたいにそのアドレスにはいってるアドレスを参照する
ってのを知りたかったのです。
なんかいつも質問してるな…。ありがとうですです。
0710名無しさん@お腹いっぱい。01/10/09 19:15ID:???
$template =~ s/\$([a-zA-Z\d\-_]+)/$$1/g;

みたいな感じか。
あえてやるなら。
071170701/10/09 19:22ID:???
>>708,>>710
あ!置換すればいいんか!
ダブルクォート内の変数展開にこだわってて見えなかった。
どもー。
0712名無しさん@お腹いっぱい。01/10/09 20:01ID:???
$bb= eval $aa;
$aa= $zz;
$zz='hoge';
print eval $bb;

こういうのはできないんですねぇ。
0713名無しさん@お腹いっぱい。01/10/09 20:04ID:???
$bb= eval $aa;
$aa= '$zz';
$zz='hoge';
print eval $bb;

こうか。どっちにしろできない。
0714名無しさん@お腹いっぱい。01/10/09 20:08ID:???
>>711
無理に置換するよりも、最初のままの方がいいんではないか思う。

あと、
 eval(qq($template))
って書くと少しカッコイイ(w
0715名無しさん@お腹いっぱい。01/10/09 21:50ID:???
Perl暦2ヶ月の初心者です。
関数のリファレンスについての質問です。

配列やハッシュならよく使っているのですが、関数のリファレンスは
どういうときに便利なのかがいまいち理解できません。

先生、ご指導お願いします。
0716名無しさん@お腹いっぱい。01/10/09 22:19ID:ac7tHUi6
gzip圧縮されたページを取得した後で展開するのにお手頃なPerlモジュールはありますでしょうか。

プロバイダの個人HPなので、システム変更の自由はきかないんです。
その上、gzipも使えないので。

やはりCPANのArchive::zipを使えと言う事になるのでしょうか?
0717>71501/10/09 22:25ID:???
---例えば配列やハッシュを渡すとき
&Fnc(\%data, $file);
sub Fnc {
 my ($ref_data, $file) = @_;
 my $name = $ref_data->{NAME};
 my $title = $ref_data->{TITLE};
 open(DATA, $file);
 .....
}

---例えばクラスを作るとき
sub new {
 my $class = shift;
 my $self = {};
 bless($self, $class);
 $self->_initialize();
 return $self;
}

sub _initialize {
 my $self = shift;
 $self->{NAME} = 'hoge';
.....
}
0718711じゃないけど01/10/09 22:28ID:???
>714
置き換えても動作せんよ?漏れがいけないんかな?
0719名無しさん@お腹いっぱい。01/10/09 22:39ID:rO0MbdjQ
>>716
ローカル環境でgzipの展開にCompress::Zlibを使ってます。
ただしUNIXサーバに入れるにはCコンパイラが必要みたいです。
(うちはWindows + ActivePerl + PPMなのでコンパイル不要だった)
072071401/10/09 23:38ID:1lvwgexc
>>718
あれれ?
$needle='This is sample text.';
$template='$needle';
print $template,"\n",eval(qq($template)),"\n";で、
$needle
This is sample text.って出ませんか?
0721714,72001/10/09 23:39ID:???
改行が一部壊れた…
しかもageちゃったシクーリ
0722名無しさん@お腹いっぱい。01/10/10 00:19ID:FXDqXQ2w
特定のページからリンクされた場合以外は他のページに飛ばす機能を組み込んだ掲示板を作りたいのですが
どうすればいいですか?
掲示板はネットで見つかったのですがリンクの制限が見つからなくて困ってます。
0723名無しさん@お腹いっぱい。01/10/10 00:29ID:???
>720
それだとばっちし動作します。けど>>707の最後の一行と
eval(qq($template))を置き換えても動作しないです。
「文字列の中の変数名」をあとから展開
てのはその方法だとできないって事なのかな?
ちなみにeval(qq($template))のqqてのは何なのでしょうか?
0724名無しさん@お腹いっぱい。01/10/10 00:39ID:???
>>722
最初にHTTP_REFERERとって特定のURL以外ならlocationで飛ばせばいいんでない?
072572201/10/10 00:39ID:FXDqXQ2w
できました。ありがとうございました。
072670701/10/10 00:54ID:1woNivdA
>>720
おれも自分で試してみたよん。
eval(qq($template)) では707はうまくいかないっす。
eval(qq("$template")) ならオーケーでした。

結局、このやりかたは評価が2回必要になる(?)ので、
正規表現展開の手間をいれても>>710の人のやりかたが速いです。
Benchmark検証済み。
0727名無しさん@お腹いっぱい。01/10/10 00:56ID:???
シンボリックリンクでの参照は
my変数が見えない、strict refsでは動かない等の問題があることだけ注意。
072872001/10/10 01:08ID:fymnbEUM
>>723
(´-`).。oO(なんでこんなヘボいミスしたんだろう……)

というわけで、
eval("qq($template)")
が正解です。失礼しました。

qqについては
ttp://flex.ee.uec.ac.jp/texi/perl/perl_136.html

このへん参照するといいと思う。
072971601/10/10 08:19ID:OwjZu2K6
>>719
レスどうもです。そうですか、ドキュメントを未だちゃんと読んでいなかった
のですが、Compress::Zlibはコンパイルが必要ですか。プロバのHPなので
それも出来なくてちと悲しいです。
0730名無しさん@お腹いっぱい。01/10/10 11:46ID:???
>>729
コンパイルもやろうと思えば出来ますよ。
0731名無しさん@お腹いっぱい。01/10/10 14:09ID:29gVd4os
LWP::UserAgent からFORMの内容を POSTメソッドで
送信したいんですが、どのように受け渡せばいいのでしょう?

$ua->cookie_jar($cookies);
みたいに格納できるメソッドがあるのですか?
0732名無しさん@お腹いっぱい。01/10/10 14:48ID:???
他人の鯖に設置してある掲示板とかのパスワード保存ファイルって(例えばpass.cgi)
CGIで読みこんだりとかできるの?それでパスクラックできねえかな。
0733名無しさん@お腹いっぱい。01/10/10 14:56ID:???
「CGIで読みこんだり」ってのが意味不明
0734名無しさん@お腹いっぱい。01/10/10 14:58ID:???
732には100%無理。
0735名無しさん@お腹いっぱい。01/10/10 16:22ID:2.AeAxdc
>>731
POST用のデータはRequestのほうに入れとく。
my $req = HTTP::Request->new(POST => $url);
$req->content('name=hoge&text=hoge');

もしデータ内に日本語などがある場合は
use HTTP::Request::Common;
$req = HTTP::Request::Common::POST($url, [name='ほげ',text='ふが']);
を使うと、自動的にエスケープしてくれて楽。
0736名無しさん@お腹いっぱい。01/10/10 16:25ID:???
>>735 訂正。[name=>'ほげ',...]でした。
0737名無しさん@お腹いっぱい。01/10/10 16:28ID:???
LWP使うやつはperldoc lwpcookぐらい読んどけ。
0738名無しさん@お腹いっぱい。01/10/10 16:46ID:???
>>735
ありがとうございます。
調べてみたら

$hd = HTTP::Headers->new;
foreach $key ( keys %FORM ){
 $hd->push_header( $key -> $FORM{$key} );
}
$req = HTTP::Request->new( 'POST', $url, $hd );

でもいけそうな感じだったので試してみます。

というかPOSTで渡す内容が不特定なので
[name=>'ほげ', text=>'ふげ']
だと無理ですかね。
073973101/10/10 18:23ID:???
>>738
うう、 $hd->push_header ではうまくいきませんでした。

>>735 さんの方法で上手くできるんでしょうが、不特定多数の
要素を送る必要があるのでこの方法は使えないし…。

すいません、不特定多数の要素を POSTとして送る方法を
教えていただけないでしょうか。
0740名無しさん@お腹いっぱい。01/10/10 19:04ID:???
my $req = HTTP::Request::Common::POST($url, [ %FORM ]);
074174001/10/10 19:06ID:???
いやこうか。
my $req = HTTP::Request::Common::POST($url, \%FORM);
0742名無しさん@お腹いっぱい。01/10/10 19:37ID:???
関数内で関数を記述していますが、同名の関数が出現した場合、
うまく動いてくれません。
何が足りないのか教えてください。

sub foo()
{
sub _getstr($)
{
my ($str) = @_;
return $str . "だよ\n";
}

my ($str) = _getstr("てきとー");
print $str;
}

sub foo2()
{
sub _getstr($)
{
my ($str) = @_;
return $str . "だもん\n";
}

my ($str) = _getstr("てきとー");
print $str;
}

&foo();
&foo2();
0743名無しさん@お腹いっぱい。01/10/10 20:05ID:0t.5n9Ms
>>742
それじゃ_getstrが局所的な関数定義になってないです。
Perlは基本的に、どこで定義してもグローバル関数(笑

2つの_getsrtを別々の名前空間で定義すればオーケ。

sub foo() { package foo; sub _getstr() 以下略 }
sub foo2() { package foo2; sub _getstr() 以下略 }
0744名無しさん@お腹いっぱい。01/10/10 20:27ID:???
>743さん
どうもありがとうございます。

my宣言とかできるかちょっと期待したのですが、
これは、packageの方も少し試してみて、
内部関数名を変えるかpackage使うか決めたいと思います。

(関数内でpackage書けるの知りませんでした。どうもです)
0745名無しさん@お腹いっぱい。01/10/10 20:42ID:???
package使った方がいい感じなのでそうしました^^
0746名無しさん@お腹いっぱい。01/10/10 20:56ID:???
#ローカル関数を使いたいのならば
local *foo = sub{ hogehoge };
my $foo = sub{ hogehoge };
#とすれば良いのではないかな?
0747名無しさん@お腹いっぱい。01/10/10 22:41ID:???
>>746
それがほんとのローカル関数ですね。
743みたいなのは外から&foo::_getstr()でアクセスできるし。
0748名無しさん@お腹いっぱい。01/10/10 23:55ID:???
>>741
なるほど! ありがとうございます。
0749名無しさん@お腹いっぱい。01/10/11 11:44ID:???
>746さん
なるほど。こんな感じですね。
どうもありがとうございます。

sub foo()
{
my $_getstr = sub($)
{
my ($str) = @_;
return $str . "だよ\n";
};

my ($str) = $_getstr->("てきとー");
print $str;
}
0750 ◆PerlFQqs 01/10/11 15:34ID:???
>>749
プロトタイプに注意。
#!/usr/bin/perl
sub PrintScalar($){ print shift, "\n" }
BEGIN{
*PrintScalar2 = \&PrintScalar;
$PrintScalar3 = \&PrintScalar;
}
*PrintScalar4 = \&PrintScalar;
$PrintScalar5 = \&PrintScalar;

my @hoge = qw(foo bar);
PrintScalar (@hoge);
PrintScalar2 (@hoge);
$PrintScalar3->(@hoge);
PrintScalar4 (@hoge);
$PrintScalar5->(@hoge);
PrintScalar6 (@hoge);

BEGIN{
*PrintScalar6 = \&PrintScalar;
}
__END__
0751名無しさん@お腹いっぱい。01/10/11 16:48ID:kMiBAPJ6
>>750
えーと、「プロトタイプを有効にするには、BEGINブロックの中で
エリアスを作るしかない」つーことですか?

あ。念のため今perldoc perlsub見たら、そう明記されてたっす。
知らなかったー。プロトタイプあんま使わないから。

要するにプロトタイプ付きの「ローカル関数」は作れないってことなのか。
075275101/10/11 16:51ID:???
perldubじゃねーや。perlrefの"Function Templates"のとこでした。
0753名無しさん@お腹いっぱい。01/10/11 20:27ID:???
プロトタイプの'&'って使ったことある人いる?
なんかサンプル見るとtry〜catch構文とか作ってて
いろんな意味でスゲーんですけど。
俺は一生プロトタイプ'&'を自分で使うことはあるまい。
0754nullsann01/10/11 23:27ID:S31Vh/vQ
複数のファイルを何度もOpen/Closeさせてるんですが、
ファイルロックは一度で良いんでしょうか?

sub filecheck{
&lock;#
open IN,"$logfile";
#syori
close IN;

open FP,"> $logfile"
#syori
close FP;
.
.
.
.
&unlock;
}

mkdirのロック方式使ってるんですが・・・。
0755名無しさん@お腹いっぱい。01/10/12 00:30ID:???
>>754
一度でよし。
0756名無しさん@お腹いっぱい。01/10/12 01:31ID:kGkVgeeA

if ($ENV{'HTTP_REFERER'} ne 'http://許可する.com') {
print "Location: http://ばいばい.com\n";
print "\n";
}
にしたのですが、閲覧を許可する参照元をもう一つ増やすにはどうしたらいいですか?

if ($ENV{'HTTP_REFERER'} ne 'http://URL1'|'http://URL2')
だとうまくいきませんでした
0757名無しさん@お腹いっぱい。01/10/12 01:54ID:???
>>756
許可するのが2つぐらいなら
「URL1ではなく、URL2でもなければ、ばいばい」というふうに
素直にコーディングするといいです。

if ($ENV{略} ne 'URL1' and $ENV{略} ne 'URL2') {
・・・
}
0758名無しさん@お腹いっぱい。01/10/12 10:18ID:UFajsOUw
cgiからcgiを作るのを習作していますがエラーとなってしまいます。何か
根本的に違うのでしょうか?お教えください。

#!/usr/local/bin/perl
print "Content-type: text/html\n\n";
print "<HTML>\n";
print "<HEAD><TITLE>CGIテスト</TITLE></HEAD>\n";
print "<BODY>\n";
#
print "<form name="form1" method="post" action="">\n";
print "<input type="checkbox" name="checkbox" value="checkbox">\n";
print "</form>";
#
print "</BODY>\n";
print "</HTML>\n";

__END__
0759名無しさん@MZ-200001/10/12 10:21ID:???
「cgiからcgiを作るのを習作しています」が根本的にワケワカラン(w
とりあえず

print "<form name="form1" method="post" action="">\n";
print "<input type="checkbox" name="checkbox" value="checkbox">\n";

この二行がだめ。
0760名無しさん@お腹いっぱい。01/10/12 10:24ID:???
(´-`).。oO( " -> \" ・・・・)
0761名無しさん@お腹いっぱい。01/10/12 10:39ID:DN2jVK/o
('-').。oO
0762名無しさん@お腹いっぱい。01/10/12 11:11ID:VXGFJvh.
print "<form name=\"form1\" method=\"post\" action=\"\">\n";
print "<input type="checkbox\" name=\"checkbox\" value=\"checkbox\">\n";

だね。
0763名無しさん@お腹いっぱい。01/10/12 11:16ID:VXGFJvh.
一個抜けた。
print "<input type=\"checkbox\" name=\"checkbox\" value=\"checkbox\">\n";
鬱だ。
0764名無しさん@お腹いっぱい。01/10/12 11:20ID:???
素直にシングルクォートかひあどきゅめんとを・・・・・qqでもいいけど。。
0765名無しさん@お腹いっぱい。01/10/12 11:39ID:???
>>762-763のような誤りを避ける為に
qq{<input type="checkbox" name="checkbox" value="checkbox">\n};
まぁ>>758、お前はマトモな本で基礎を勉強してから出なおしなさいってこった。
0766名無しさん@お腹いっぱい。01/10/12 11:43ID:uPcFyHO2
>>756
ロジックを1行に書くのって頭が混乱しない?
効率悪いかも知れないけど、こんな関数を作るほうがいいと思う。

if (! &is_good_referer()) {
:
}

sub is_good_referer {
 my @kyoka = ('URL1', 'URL2');
 foreach my $url (@kyoka) {
  if ($ENV{HTTP_REFERER} eq $url) {
   return 1; # 許可するURLのどれかに一致すれば1を返す
  }
 }
 return 0; # どれにも一致しなければ0を返す
}
0767業01/10/12 11:57ID:e.iu2Egs
ネストは見る場合は大事と思われ。
ただ、空白2文字はちょっとな。4文字は欲しい。
0768名無しさん@お腹いっぱい。01/10/12 12:13ID:Qk0xmYmc
何故にコマンドラインからだとファイルの
扱いができないのでしょうか?
cgiとして動かすか、実行形式にするしかないのですか?
0769名無しさん@お腹いっぱい。01/10/12 12:18ID:ZYB0SiF6
>>768
意味わからん…。
もっと具体的に言ってくれ。
0770名無しさん@お腹いっぱい。01/10/12 12:19ID:???
>>767
ラリーヲールが2文字推奨なんだっけ?
0771名無しさん@お腹いっぱい。01/10/12 12:20ID:Qk0xmYmc
>769
即レス感謝です。
わかりずらいですね。DOS窓からスクリプト実行すると
file openとかしても読み取ってくれないのです。
これは何故でしょうか?
0772名無しさん@お腹いっぱい。01/10/12 12:26ID:???
Winで *.pl は実行できません。
0773名無しさん@お腹いっぱい。01/10/12 12:27ID:ZYB0SiF6
>>771
ありがちなのは、パス付きのファイル名を書くとき、
ダブルクォート文字列の中で"\"を"\\"としてないこと。

× "c:\hoge\fuga.txt" ←これはだめ
○ "c:\\hoge\\fuga.txt" ←これはよし。
○ 'c:\hoge\fuga.txt' ←シングルクォート使ってもよし
○ "c:/hoge/fuga.txt" ←"\"じゃなく"/"使ってもよし
0774名無しさん@お腹いっぱい。01/10/12 12:29ID:???
>>771
パスが違うかパーミッションの問題じゃねーの。
とりあえず
$filename = "moe/moe.txt"
open(F, $filename) or die "$!: $filename";
としかて、なんで失敗しているのか確認スレ。
0775名無しさん@お腹いっぱい。01/10/12 12:37ID:???
>>753
難しく考え杉じゃない。
わかれば簡単。で、サンプル

sub synchronized(&) {
  my $code = shift;

  lock();
  $code->();
  unlock();
}

synchronized {
  # >>754から
  open IN,"$logfile";
  #syori
  close IN;

  open FP,"> $logfile"
  #syori
  close FP;
}
077677501/10/12 12:40ID:???
すまん。セミコロンわすれた。

synchronized {
  #...
};#<-これ
0777名無しさん@お腹いっぱい。01/10/12 13:23ID:PeaA6TSM
相対パスでやってるんですけど、ダメなんでしょうか?
or die "$!: $filename";
いれてやったらファイルみつからんて言われちゃいました.
0778名無しさん@お腹いっぱい。01/10/12 13:34ID:???
あれ?絶対パスでもダメだ。
0779名無しさん@お腹いっぱい。01/10/12 13:50ID:???
あれれ?簡単なの作ってテストしたらできた。
御迷惑おかけしました。
どうもありがとうございました。
0780名無しさん@お腹いっぱい。01/10/12 14:02ID:PeaA6TSM
$var = 'myvar';
$sym = mypack::$var;
は、
$var = 'myvar';
$sym = "mypack::$var";
とは違うらしいのですが、何が違うのでしょうか?
0781777-78001/10/12 14:45ID:???
うまく動作しない…。何故だぁ。
DOS窓だと
open(MAIL, ">>$docomo");って
できないんですか?追記のはずが最初の一回目しか
書き込めんですヽ(`Д´)ノ
0782名無しさん@お腹いっぱい。01/10/12 14:49ID:???
すみませんまたミスってました。
なんか私の恥じをさらすスレと化してしまい
申し訳ありません。
ごめんなさい。ごめんなさい。ごめんなさい。
0783JAPU@見知らぬ国のトリッパー ◆dcddJAPU 01/10/12 14:51ID:???
前者はコンパイルエラーになりますが、後者はなりません。
...という違いです。
0784名無しさん@お腹いっぱい。01/10/12 14:51ID:???
>781-782
ミスるのはいいから、なにをどうミスっていたか書いておいてほしい。
それを見た他の初心者が同じ事をしないですむ可能性があるんだから。
0785名無しさん@お腹いっぱい。01/10/12 15:29ID:???
>784
誰もしないようなミスだったんで、、、
openする前に$docomoをforeach文で上書きしまくってました。
ちなみに相対パスだとオープンできないってのは
よくわからないままです。
他はみなさんの言うと通りやったらできました。
0786名無しさん@お腹いっぱい。01/10/12 15:33ID:???
>JAPUさん
780に対するのですね。ありがとうございます。
ただそれだけなんですか。なんか深い意味があるのかと
思っちゃいました。
0787名無しさん@お腹いっぱい。01/10/12 15:35ID:???
相対パスってスクリプトからの相対パス?
実行時のカレントディレクトリとスクリプトがおいてあるディレクトリは同じ?
0788名無しさん@お腹いっぱい。01/10/12 15:53ID:???
スクリプトからの相対パスです。
実行時のカレントディレクトリはスクリプトの
ある所になるのでは無いのですか?
0789名無しさん@お腹いっぱい。01/10/12 16:05ID:???
スクリプトが無い場所から起動してみればわかると思うけど、
実行時のカレントディレクトリが基準になるのでは。
0790名無しさん@お腹いっぱい。 01/10/12 16:08ID:???
このスレでやってたよ、ログ探してみ、WIN、UNIXともカレントが正解。
0791名無しさん@お腹いっぱい。01/10/12 16:46ID:???
相対パスでできました。
command.comからの相対パスなんですね。
なるほど。ありがとうございます。
0792名無しさん@お腹いっぱい。01/10/12 20:37ID:???
>>791
> command.comからの相対パス
何故そう解釈出来る?
command.comからの相対パスだと、基準はC:\Windowsになってしまうでしょ。
実行時のカレントディレクトリだぞ・・・
0793名無しさん@お腹いっぱい。01/10/12 22:52ID:.7AHiXCo
え?え?
違うんですか?実行時のカレントディレクトリというのは
どういう事ですか?
ちなみにcommand.comからの相対パスで
やったらうまくいったものでして。。。
0794名無しさん@お腹いっぱい。01/10/12 22:55ID:???
駄目だコリャ
0795名無しさん@お腹いっぱい。01/10/12 23:16ID:???
>>793のホームディレクトリ=C:\
■ このスレッドは過去ログ倉庫に格納されています