フォロトップ:この会議室が所属するフォロのトップページへ移動します 会議室トップ:この会議室のトップページへ移動します トピック一覧:この会議室内のトピックを一覧表示します おすすめレビュー:この会議室に関連付けられたレビューを一覧表示します 発言者一覧:この会議室に発言したことのあるメンバーを一覧表示します 会議室に参加:この会議室への参加登録が出来ます
文字サイズ変更: [] [] []
お目当てのフォロへGO! 
オフィシャル
エンタメ
スポーツ
文化・趣味
コンピュータ
くらしと健康
芸術・学問
ビズと社会
地域・年代
ノンジャンル


2008年12月18日
12:04
【107】  雛形ファイルの特定位置に指定した文字列を挿入したい(XP版)
はじめまして、tmです。
以前、「雛形ファイルの特定位置に指定した文字列を挿入したい」のタイトルの内容を参考にして、雛形ファイル内の特定文字置き換えをvistaで動作確認したのですが、XPでは動作可能でしょうか。試しましたが中断しているように思います。

コマンド:
(for /f "delims=" %%A in (%CURPATH%%HINAFILE%) do @echo.%%A)>..\COMPBAT\%FNAME%.bat
です。
コメント
2008年12月18日
14:36
お騒がせしております。tmです。

原因がわかりました。

上記、%CURPATH% のフォルダ名に半角カッコ[()]が入ってました。

申し訳ありません。これからもよろしくお願いします。

以上
2008年12月18日
19:40
コマンドプロンプトとは少し話がずれてしまいますが、雛形ファイルを用いた置換/挿入処理をやる場合、私はUnix系のsedコマンドを使います。
DOSコマンドだけでやろうとすると、空行や特殊な文字の扱いなど意外と面倒な事でハマる場合があるので。
ちなみに私はWindows版sedとして http://www.kt.rim.or.jp/~kbk/sed/ を使ってます。
2008年12月18日
19:56
tm 様

結局のところ、usebackqを使い、ファイルセットをダブルクォートで囲うことで解決されたのでしょうか?

(for /f "delims=" %%A in (%CURPATH%%HINAFILE%) do @echo.%%A)>..\COMPBAT\%FNAME%.bat

(for /f "usebackq delims=" %%A in ("%CURPATH%%HINAFILE%") do @echo.%%A)>..\COMPBAT\%FNAME%.bat

少し気になりましたので。

あと、..\COMPBAT\%FNAME%.bat もダブルクォートで囲んだほうが安全ですよ。
%FNAME%が空白を含んでいるかもしれないので。
2008年12月22日
09:30
>>3. atsukiさん [folo:fpcu/434/topic/107/3]

(for /f "usebackq delims=" %%A in ("%CURPATH%%HINAFILE%") do @echo.%%A)>..\COMPBAT\%FNAME%.bat

ご指摘のように、("%CURPATH%%HINAFILE%") とすると、たとえば("d:\path\file.txt") となるためfile.txtの内容が読めません。そのためフォルダ名のカッコを外しました。

「..\COMPBAT\%FNAME%.bat もダブルクォートで囲んだほうが。。」については対応します。

ありがとうございました。
すべて表示 1番~4番を表示
 コメントするにはfolomyへの会員登録ならびにログインが必要です。 folomyに入会する
ログインする(すでに登録済みの方)
----