XP_HEsp3です。
バッチの書方で教えてください。
1.ファイルのタイムスタンプを比較する方法
次のような処理で更新日時が新しければ、
if hoge.txt-timestamp > hoge.utf8-timestamp (
nkf -w8Lu hoge.txt > hoge.utf8
)
というのはどう書けばよいでしょうか。
2.解説をお願いします。
set t=%time:~0,5%
mkdir %date:/=_%_%t::=_%
timeとdateの出力を利用する、出力にはコロンが入っている。
・・・・位しか分りません。
実行してみてアンダーバーの意味は分りました。
~0,5% とスラッシュが分りません。
No.5ベストアンサー
- 回答日時:
スペースなどを削除と考えるより ""でくくってしまった方が簡単でしょう
if "%txt" GTR "%utf%" ( touch %utfName% )
といった具合です
ありがとうございます。仰有るとおりでした。
if "%txt%" GTR "%utf%" touch test.log
if "%txt%" GTR "%utf%" (nkf -eLu hoge.txt > hoge.euc)
どちらも条件が真の場合のコマンドが実行されました。
""で括れば大小を比較するのですね。
不思議です。
ExcelのDate関数は整数値を返すので、それとの連想で、整数値に整形すべきと考えました。
No.4
- 回答日時:
あ、すみません、こうです。
↓IF %txt% GTR %utf% (touch test)
%%で括るべきなのを私が当然気付くべきでしたm(_)m。
しかし、
-------------
C:\temp>set txt
txt=2008/09/09 11:33
C:\temp>set utf
utf=1997/01/01 11:11
C:\temp>IF %txt% GTR %utf% (touch test)
11:33 の使い方が誤っています。
--------------
となるので、/と:とスペースを取除くべきかと。
その方法を教えてください。
set /? の説明は私には難しすぎます。
No.3
- 回答日時:
ファイルのタイムスタンプの取得は FORで取得可能でしょう
for %%I in (hoge,txt) do set txt=%%~tI
for %%I in (hoge.utf8) do set utf=%%~tI
とすれば 日付と時間が環境変数 txtとutfに取り出せますよ
コマンドラインで確かめる場合は %%を %に置き換えてください
ご回答感謝です。
コンソールで
for %I in (hoge.txt) do set txt=%~tI
for %I in (hoge.utf8) do set utf=%~tI
IF txt GTR utf (touch test)
としても駄目ですね。
日付と時間が環境変数txtとutfに格納されるのは確認しました。
この値を / と : を取除いて単純な整数にすればよいのでしょうか。
No.2
- 回答日時:
1番のヒント。
SET txtfile=hoge.txt-timestamp
SET utffile=hoge.utf8-timestamp
SET txt=...
SET utf=...
IF txt GTR utf (
~
)
...の部分は、2.の解説を元に考えてみてください。
GTR については、コマンドプロンプトから、IF /?
で説明が見れます。
No.1
- 回答日時:
とりあえず2番だけ。
>set t=%time:~0,5%
time の出力のうち、先頭から5文字分を取り出して 環境変数 t に入れます。
>mkdir %date:/=_%_%t::=_%
ディレクトリを作成します。ディレクトリ名のうち 「%date:/=_%」を [A]部、「%t::=_%」を[B]部とすると、
[A]_[B] というディレクトリを作ります。
[A]部は、date の出力のうち、"/"記号を"_"に置換したもの
[B]部は、環境変数 t のうち":"記号を"_"に置換したもの
コマンドプロンプトを起動し、SET /?
と入力すると、説明が見えますよ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチ処理でファイルの中身を...
-
COPYコマンドで結合すると余計...
-
テキストファイルのファイル名...
-
フォルダ内全ファイルをシート...
-
テキスト(txt)→ワード(docx)へ...
-
ファイルを処理中に次の処理に...
-
拡張子を元に戻す
-
.txtではなく.logの方が良いの...
-
txtとはWordでなんですか?
-
VBAでワークシートを引数として...
-
ファイルの最後に文字列挿入
-
バッチでファイルの内容の比較...
-
多数のサブディレクトリ内のフ...
-
Unicode 対応の sed って無いの...
-
textファイルの内容の削除につ...
-
[awk]でデータ整理がしたいです。
-
大量のフォルダからひとつのフ...
-
コマンドプロンプトのエラーに...
-
コマンドプロンプトの「%1」と...
-
binファイルを解凍したいの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチ処理でファイルの中身を...
-
.txtではなく.logの方が良いの...
-
VBAでワークシートを引数として...
-
多数のサブディレクトリ内のフ...
-
拡張子を元に戻す
-
COPYコマンドで結合すると余計...
-
ファイルの最後に文字列挿入
-
Windowsのバッチファイルを利用...
-
txtとはWordでなんですか?
-
テキストファイルで提出とは?
-
バッチファイル 複数ファイル...
-
UWSCでテキストファイルを開い...
-
psqlでエラーログをとりたい
-
forfilesで検索したファイルを...
-
renameコマンドについて
-
バッチファイルからVBAに引数を...
-
accessでSQL文を使ってcsvファ...
-
エクセルの各セルの内容をそれ...
-
MS-DOSのバッチファイルの中で...
-
フルパスの中にワイルドカード...
おすすめ情報