3DCG屋さんの活動記録

PROFILE ★★こんな人です

映像制作会社でクリエイティブの修行中。日ごろはMaya&AEを中心にいろんなCGソフトを触りながら、TD寄りの作業が好きで、インタラクティブな体験型空間演出をやりたいと模索中。面白いこと新しいこと大好きな『素直』でいつづける

2019年4月9日火曜日

batチャレンジ! フォルダ内のファイル名から、文字列変換テキスト作成


ファイルをドラッグ&ドロップしたらリスト取得、のbatはよくあるんですが・・・

「フォルダ(ディレクトリ)」をドラッグ&ドロップして、求める結果が得られなかったので、今回自分が調べた内容を記録に残します。



<目的>
フォルダをドラッグ&ドロップ(以降D&D)して、そのフォルダ内のファイルをリストにしてテキストファイルに書き出す。


調べてすぐ出てくるのは、D&Dしたフォルダ・ファイルのカレントディレクトリのリストが取得されるっていうこと。
中身(下位層)のリストが取得できない!

シンプルなこういうの



・・・


で作ったのがこれ。

使い方は、
以下コマンドをbatにして保存。
フォルダをD&Dすると、batと同じフォルダにtxtファイルが保存されます。


@echo off
rem フォルダをbatにD&Dしてフォルダ内のリスト取得
rem コマンドプロンプトに表示
rem forfiles /p  %~p1 /c "cmd /c echo @fname @ext"
rem テキストファイルに書き出し(batのある場所にtmp.txt一時作成)
forfiles /p  %1 /c "cmd /c echo @fname@ext>> %~p0\tmp0.txt"
setlocal enabledelayedexpansion
for /f "delims=" %%a in (%~p0\tmp0.txt) do (
  set line0=%%a
  set line1=!line0:""=.!
  set line1=!line1:"=!
  echo !line1!>>%~p0\tmp1.txt
)
rem type %~p0\tmp0.txt > %~p0\rawlist_%~n1.txt
type %~p0\tmp1.txt > %~p0\FILELIST01_%~n1.txt
del %~p0\tmp0.txt
del %~p0\tmp1.txt
endlocal


---------------
以上。

D&Dするフォルダと同じドライブにbatを保存して使用してください!




<参考サイト>



--------------------------------------------
ちなみに、かなり特殊だけどカスタマイズしたのがこちら。
【テキスト1】ファイル名(拡張子なし)取得して、前後に文字列挿入&連番
【テキスト1】ファイルのフルパス名取得して、前後に文字列挿入&連番











0 コメント:

コメントを投稿