
基本的な質問ですみません。
下記バッチがあるとします。
C:\HOME\BAT\EXP\LIST\DEL.BAT
バッチでは下記ディレクトリ内ファイルを削除しようと
考えてます。
C:\HOME\LOG\JOB\JOB.LOG
でバッチで「DEL ../../../LOG/JOB/JOB.LOG」と記述しましたが
削除されません。
コマンドプロンプトで「CD ../../../」としても上記「HOME」フォルダに
移動できず絶対パスだと移動できます。
「DEL」「CD」コマンドは相対パスの場合、何かコツがあるのでしょうか?。
それとも単に間違えているのか・・。
アドバイスお願いします。
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
相対パスは、カレントディレクトリを基準にするので、
それが災いしてちゃんと動かないのだと思います。
それと、DEL.BATのような名前は、コマンドDELと識別が
難しくなるのでやめた方が良いでしょう。
たぶん、"c:\home\log\exp\list"をカレントに、DEL。BATを起動すると・・
DEL.BAT内で、DELコマンドでなく、DEL.BATを再帰的に呼び出してしまう
可能性があります。
また、DEL.BAT内で、/による表現を使っていますが・・
Windows/DOSらしく、\とした方が間違いありません。
/でも動く場合はありますが、必ず動くとは限らない。
(これが理由かも??)
突っ込みどころが多いので、原因が確定できません。
No.4
- 回答日時:
delコマンドで相対パス指定はできなかったと思います。
>コマンドプロンプトで「CD ../../../」としても上記「HOME」フォルダに
>移動できず絶対パスだと移動できます。
これはよくわかりません。カレントが「C:\HOME\BAT\EXP\LIST」であれば先のコマンドで移動は可能だと思いますが・・・・
ということで、私も#3回答者様の方法がよいのではと思います。
絶対パスを指定したくないのであれば、他の方法を考えるしかないですね。
(環境変数からのパス取得とか、ファイル名検索とか・・・)
No.3
- 回答日時:
BATファイルの実行はどちらでやられているのでしょうか?
相対パスとは、実行時のパスからの相対的な位置を言うのでBATファイルの所在とは関係ありません。
BATファイルの同じパスに移動してから起動するか、BATファイルの頭の方にBATファイルのあるパスまで移動するコマンドを入れるとよろしいのではないでしょうか?
エクスプローラーなどからダブルクリックなどで実行する用途があるならBATファイルの頭の部分に移動コマンドの追加がおすすめです。

No.2
- 回答日時:
私良く解りませんか^^;
参考になれば。
http://www.cj-c.com/faq/pass.htm
参考URL:http://www.shoshinsha.com/hp/1hour/know/pass.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA 特定文字含むファイル
-
SQLが設定されていたWordが使用...
-
【ppt、VBA】ファイル開閉時の...
-
ftpコマンドを実行すると「425 ...
-
バッチファイル 文字列にスペ...
-
コマンドプロンプトでファイル...
-
make test って何をするための...
-
バッチファイルを使ってテキス...
-
CPRMでコピーしたDVDを再コピー...
-
ショートカットをデスクトップ...
-
サーバー側で画像解像度を変更...
-
beautifulsoupがインストールで...
-
バッチ終了時にDOS窓を閉じるコ...
-
BATファイル作成時の記述に...
-
コマンドプロンプトをクリック...
-
VBS【プリンタドライバのインス...
-
「win11-23H2」を「win11-24H2...
-
エクセルのVBAについて とある...
-
「営業秘密の漏洩」について
-
コマンドプロンプトの「%1」と...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチファイル 文字列にスペ...
-
コマンドプロンプトをクリック...
-
バッチ終了時にDOS窓を閉じるコ...
-
make test って何をするための...
-
findstrでヒットした1行前の文...
-
ftpコマンドを実行すると「425 ...
-
ftpコマンド出力結果の取得
-
シェルの「:コマンドが見つか...
-
ショートカットをデスクトップ...
-
フォルダ、ファイル操作に最適...
-
バッチファイルを使ってテキス...
-
FTPの連続実行でフリーズする
-
コンピュータ名をファイル名に...
-
AccessVBAで実行時間を指定する...
-
C言語で、string.h conio.hを使...
-
CPRMでコピーしたDVDを再コピー...
-
シェルからpsqlコマンドでトラ...
-
バッチファイルでのMACアドレス...
-
シェルスクリプト内のcdで、カ...
-
2つ目の「pause」は無効?
おすすめ情報