前提・実現したいこと
windows10のコマンドプロンプト上で実現可能な、
半角スペースを含むファイル名を持ったcsvファイルの結合(マージ)及び、
マージファイルの各先頭行にファイル名を出力したい。(可能なら拡張子抜きで)
非エンジニアの方が使用する前提でbatファイル化する想定です。
手前ではruby等で適当なscriptを書いて対応しているのですが、
毎回同じ依頼が来るため作業の簡略化したいです。
発生している問題・エラーメッセージ
実現したいことは下記質問とほぼ同じです。
『コマンドプロンプトでのCSVファイルの結合』
https://teratail.com/questions/138642#reply-209800
ほとんどのファイルは結合できたのですが、
今回対応するファイル群にはファイル名に半角スペースが入っているものがあり、
上記の質問上にて回答されていた方のソースコードでは対応できませんでした。
例:「転職 東京.csv」「ランチ 渋谷.csv」みたいな感じのファイルです。わかる方はわかるかもしれませんが、GRCという順位取得ツールの出力ファイルです。
該当のソースコード
Windows10 コマンドプロンプト
@echo off set OPT="tokens=*" ( for %%i in (*.csv) do call :SUB %%i )>result.csv.out pause goto :EOF :SUB echo %1>CON for /f %OPT% %%b in (%1) do echo %1,%%b set OPT="tokens=* skip=1" goto :EOF
追加補足
また、上記のコードだとファイル名がそのまま先頭行に入っているので、可能なら追記するファイル名の拡張子も削除した状態で出力したいです。
手前勝手な質問で申し訳ありませんが、お力添えいただけますとありがたいです。

回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/09 07:26