コマンドプロンプトにて、絶対パスから相対パスを取得する方法はございますでしょうか?
hoge
├ hoge2.txt
└ hoge3.txt
という階層で、
for %%A in (hoge\*.txt) do (
echo %%A
)
と for で回すと、%%Aには絶対パスが入ります。
この%%Aに相対パス(hoge\hoge2.txt)を格納する方法、もしくは%%Aから相対パスを抜き出す方法が知りたいのです。
VBなど別プログラムを起動させずに、あくまでもコマンドプロンプト上での方法がありましたら、どうかご教授下さいませ。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
当方、環境はXpSP3です。
カレントをC:\に移動し、コマンドライン上より実行しました。
C:\>for %a in (wrk\*.csv) do echo %a
コマンドの細部が違う事などは了解してくださいね。
で、結果が
wrk\data3.csv
で、XpSP3でも相対パスしか入りませんでした。
No.1の方へのお礼にも書きましたが、/r パラメータを付けていたのが、絶対パスとなった原因でした。
同じ環境での実証を誠にありがとうございます。
皆さんが挙って相対パスと指摘下さったお陰で、こちらのミスに気付けました。
ご回答、ありがとうございました。
No.2
- 回答日時:
たぶんスクリプトだと思うので作って実行してみましたが, 手元の Vista Business でテストする限りでは相対パスになってますねぇ.
cドライブではテストできなかったので dドライブでやってますが,
d:\>dir /s hoge2.txt
で
d:\Test1\Test2\hoge\hoge2.txt
だけが出る状況で d:\ に
cd Test1\Test2
for %%A in (hoge\*.txt) do (echo %%A)
という内容のスクリプトを作って実行しましたが,
hoge\hoge2.txt
しか表示されませんでした.
N0.1の方へのお礼にも書きましたが、/r パラメータを付けていたのが、絶対パスとなった原因でした。
詳しい検証を誠にありがとうございます。
お陰様でミスの原因に気付けました。
ご回答、ありがとうございました。
No.1
- 回答日時:
あれ? それで絶対パスが入りますか?
手元の Vista では相対パスになっているんですけど....
この回答への補足
私の環境はXPです。
VistaとXPの違いでしょうか・・・
例えば、
C:\Test1\Test2\hoge\hoge2.txt
という階層で、
cd C:\Test1\Test2
for %%A in (hoge\*.txt) do ( echo %%A )
と走らせると、
C:\Test1\Test2\hoge\hoge2.txt
と表示されます。Vistaでは
hoge\hoge2.txt
となるのでしょうか?
for のパラメータに /r を付けていたのが原因でした。
/r で探索すると絶対パスになってしまうのですね。
パラメータを外せば、ちゃんと相対パスになりました。
OSの違いは関係ありませんでしたね。大変失礼致しました。
ご回答頂き、ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- その他(プログラミング・Web制作) 図に示す階層構造で,現在のディレクトリ(カレントディレクトリという)が*印のディレクトリであるとき, 2 2022/11/16 10:55
- Windows 10 コマンドプロンプトの使い方 1 2022/10/13 14:43
- Visual Basic(VBA) VBSで作成した相対パスのショートカットが他者と共有できません。 1 2022/09/05 11:20
- その他(プログラミング・Web制作) pythonでDepixを起動 5 2022/12/18 08:04
- その他(IT・Webサービス) 301リダイレクトの使い方について 7 2022/04/05 17:50
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- その他(ネットショッピング・通販・ECサイト) じゃらんのIDを記憶させたい 2 2023/03/31 07:55
- 迷惑メール・スパム 遠方に住んでいる知り合いのメアドで、過去のやり取りに追加して、出会い系の迷惑メールが送られてきました 1 2022/06/16 09:07
- その他(開発・運用・管理) バッチファイルで特定のファイル・ディレクトリ以外を削除する方法について 4 2022/05/31 14:03
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
バッチファイル 二つ上のディレクトリのパス取得
その他(プログラミング・Web制作)
-
batである文字列内に特定の文字列が含まれているか確認したい
その他(プログラミング・Web制作)
-
Dosブロンプトでtabを出力したい
その他(プログラミング・Web制作)
-
-
4
コマンドプロンプトの「%1」と「%~1」の違いがわからない
その他(プログラミング・Web制作)
-
5
Windowsのバッチファイルで正規表現の置換方法について…
Windows 10
-
6
バッチでテキストファイルから任意の行のみ取得したい
その他(プログラミング・Web制作)
-
7
copyコマンドについて
Windows Vista・XP
-
8
コマンドプロンプト標準出力とファイル出力両方
その他(プログラミング・Web制作)
-
9
DOSコマンドで相対パスの取得の方法がわかりません。
その他(プログラミング・Web制作)
-
10
バッチファイルで変数の中身をファイル出力したい
UNIX・Linux
-
11
バッチファイル内置換
その他(開発・運用・管理)
-
12
コマンドプロンプトのエラーについて
その他(パソコン・周辺機器)
-
13
バッチファイルで文字列削除について
その他(プログラミング・Web制作)
-
14
バッチ処理でファイルの中身を変数に入れるやり方
その他(プログラミング・Web制作)
-
15
[DOS] コピー先に同じファイル名がある場合、名前を変えて...
その他(プログラミング・Web制作)
-
16
Dirコマンドでフォルダ内ファイルの合計サイズをだすには?(コマンドプロンプトにて)
UNIX・Linux
-
17
batファイル処理でのテキストファイルの内容を編集
その他(コンピューター・テクノロジー)
-
18
xcopyで特定のファイルのみをコピーする方法
Windows 10
-
19
バッチファイル 文字列にスペースがある場合
その他(プログラミング・Web制作)
-
20
コマンドプロンプトでフォルダを移動させるには?
Windows 7
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドにてテキストファイル...
-
xcopyで特定のファイルのみをコ...
-
batファイルの結果をテキストに...
-
バッチファイル 指定行の切り出し
-
echo "abc" >> test.txt で、先...
-
コマンドプロンプトで標準エラ...
-
バッチファイルで改行の出力
-
【VBA】テキストファイルから特...
-
シェルスクリプトで複数ファイ...
-
bashで、gotoのようなラベルに...
-
ダウンロードするとメモ帳に表...
-
UNIX ファイル存在チェックの方法
-
エクセルのセルに設定したハイ...
-
FTPのバッチファイルで日付を引...
-
Cygwinのリダイレクトでファイ...
-
フォルダに入っているファイル...
-
バッチファイル 現在のフォルダ...
-
【DOSコマンド】for の デリミ...
-
バッチファイルのfor文の使い方...
-
echoの出力の最後のスペースを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
xcopyで特定のファイルのみをコ...
-
バッチファイル 指定行の切り出し
-
echoの出力の最後のスペースを...
-
echo "abc" >> test.txt で、先...
-
バッチファイルで改行の出力
-
コマンドプロンプトで相対パス...
-
【VBA】テキストファイルから特...
-
コマンドプロンプトで標準エラ...
-
コマンド実行結果を環境変数に...
-
batファイルの結果をテキストに...
-
コマンドにてテキストファイル...
-
txtって、 Microsoft Wordの状...
-
bat処理の実行結果ログ出力方法...
-
bashで、gotoのようなラベルに...
-
R18文学賞は400字詰め換算で(2...
-
NULLの置き換えについて
-
FTPのバッチファイルで日付を引...
-
バッチコマンドの「set」で入力...
-
.txtって、縦書きにはならない...
-
バッチファイル 現在のフォルダ...
おすすめ情報