currentディレクトリ内で実行 / 任意のディレクトリ内で実行

Windows PC に関するメモランダム

カテゴリー: バッチファイル  閲覧数:546 配信日:2019-11-22 12:56


currentディレクトリ内で実行


▼C:\mp4data\delete-part-filename.bat
setlocal enabledelayedexpansion
cd /d %~dp0
set keyword=M01
for /f "tokens=*" %%i in ('dir /b ^| findstr /i "%keyword%"') do (
 set a=%%i
 ren "!a!" "!a:%keyword%=!"
)

ファイル名の一部削除を行うバッチファイルが欲しいのですが..

任意のディレクトリ内で実行


バッチファイルの基本
「遅延環境変数」や「環境変数の遅延展開」を使用する場合
変数セットするより前に「setlocal enabledelayedexpansion」を記述する

変数を展開するとき
% ではなく、! を使用する

変数
set F= とした場合は、F が変数となる

上記変数を展開する時
%F% ではなく、!F! を使用する

対象ディレクトリまでのパスを指定
ファイル名の一部(指定文字列「M01」)を削除する
▼C:\Users\user\Desktop\delete-part-filename.bat
setlocal enabledelayedexpansion
for %%i in (L:\hoge\*M01.xml) do (
   set F=%%~ni
   set F=!F:M01=!
   ren %%~fi !F!%%~xi
)


コメントあり
rem ---環境変数、遅延展開使用の宣言---
setlocal enabledelayedexpansion

rem ---M01を含む拡張子 xml を複数抽出、1個ずつ繰り返し処理を行う---
for %%i in (L:\hoge\*M01.xml) do (

 rem ---変数 F にファイル名をセット、拡張子は除く
 set F=%%~ni

 rem ---ファイル名の文字列の M01 を空文字に置換、→ 文字列 M01 を削除したものになる。これを変数 F にセットし直す---
 set F=!F:M01=!

 rem ---抽出したファイルのフルパス (%~f変数) を 文字列 M01 を削除してセットした変数 !F! に拡張子 (%~x変数)を付け足してリネーム---
 ren %%~fi !F!%%~xi
)


対象ディレクトリまでのパスを「c:\mp4data」へ変更してみる
setlocal enabledelayedexpansion
for %%i in (c:\mp4data\*M01.xml) do (
   set F=%%~ni
   set F=!F:M01=!
   ren %%~fi !F!%%~xi
)


Windowsコマンドプロンプトで、指定拡張子のファイル名の一部(固定文字列)を

週間人気ページランキング / 4-18 → 4-24
順位 ページタイトル抜粋 アクセス数
1 MP3ファイルの「プロパティ」を変更できない | Windows 10(Windows) 68
2 3.解凍先の指定。デフォルト設定ではデスクトップに解凍 29
2 Audacity で再生ボタンを押しても音が鳴らない時は、再生レべルスライダーを右にドラッグして「再生レべル:100%」にします。 | Audacity(音) 29
3 タスクスケジューラ | Windows 10(Windows) 24
4 「Audacity」で複数ファイルへ対する一括変換対応について | Audacity(音) 21
5 フォルダウィンドウの「戻る」「進む」矢印ボタンが表示されなくなった | Windows7(Windows) 18
6 Windows 0 17
7 「VLC media player」で動画再生した際、動きが大きくなるにつれて横シャギーが入ったように横線が表示される場合には、「デインターレース」設定を「オン」へ変更します。 | VLC media player(ソフトウェア) 13
7 VLC media player で複数曲を「繰り返し連続再生する」ためには、プレイリスト全体をリピート再生指定する | VLC media player(ソフトウェア) 13
7 コマンドプロンプトでchkdsk /B | ハードディスクトラブル(ハードウェア) 13
8 ctfmon.exe – Unknown Hard Error | フリーズトラブル 2021年 (Windows) 11
8 「タイムゾーン間で同期」にはチェックを入れない 11
9 ファイル名の一部(指定文字列)を削除するバッチファイル | バッチファイル(Windows) 9
9 MP3ファイルの無音部分を自動検出して、「分割」もしくは「削除」するフリーソフト … mp3DirectCut | mp3DirectCut(音) 9
9 三菱東京UFJ銀行(インターネットバンキング) カテゴリー 9
10 これまで正常動作していた「CrystalDiskInfo」である日突然「対応ディスクが見つかりませんでした」と表示された場合は、アップデートしてみます。 | CrystalDiskInfo(ソフトウェア) 8
10 「Chromeのユーザー1」を削除。ブックマークを復活させるためには、「Bookmarks.bak」を「Bookmarks」へリネーム後、「Profile 1」フォルダへ上書き配置 | Google Chrome(ソフトウェア) 8
10 Xboxを使用していない場合、XblGameSaveを動作させる必要は全くない 8
10 「Windows 10」へインストールした「Audacity 3.2.4」で「.aacファイル」を読み込み、音量を大きく変換後、「.waveファイル」として出力する。 | Audacity(音) 8
11 保存すると、.BAKというファイルが勝手にできてしまう | 秀丸エディタ(ソフトウェア) 7
2024/4/25 1:01 更新
指定期間人気ページランキング / 2020-5-27 → 2024-4-24
順位 ページタイトル抜粋 アクセス数
1 MP3ファイルの「プロパティ」を変更できない | Windows 10(Windows) 22451
2 Windows 0 10299
3 ファイル名の一部(指定文字列)を削除するバッチファイル | バッチファイル(Windows) 10177
4 「接点復活剤」「接点復活スプレー」は、100円ショップで販売されていない | イヤホン(ハードウェア) 7237
5 「機能を構成しています 100%完了 コンピューターの電源を切らないでください」の画面が表示され続ける場合でも、1時間ぐらいは待った方が良いかも | 起動トラブル 2019年(Windows) 5947
6 タスクスケジューラ | Windows 10(Windows) 5193
7 コマンドプロンプトでchkdsk /B | ハードディスクトラブル(ハードウェア) 4961
8 コンピューターは正しく構成されていますが、デバイスまたはリソース (DNS サーバー) が応答していません。 | ネットワーク 3855
9 解凍先の指定。デフォルト設定ではデスクトップに解凍 3686
10 「コンテナー内のオブジェクトを列挙できませんでした」と表示される場合は、「Everyone にフルコントロール権限を与えて全て削除する」 | Windows 10(Windows) 3623
11 VLC media player で複数曲を「繰り返し連続再生する」ためには、プレイリスト全体をリピート再生指定する | VLC media player(ソフトウェア) 3426
12 マウスの選択範囲がおかしくなった時、試してみた方が良いかもしれないこと | マウス(ハードウェア) 3379
13 「みまもり合図」に関する疑問。2019年 | みまもり合図(ソフトウェア) 2715
14 「★ページは機能していません」「★からデータが送信されませんでした。」 「ERR_EMPTY_RESPONSE」と表示されるようになったら、 Kasperskyを一旦停止してみる | ウイルス対策ソフト(Windows) 2513
15 Windows10でデスクトップにファイルを保存できない。ESPRIMO DH77 | Windows 10(Windows) 2505
16 「HD-LD4.0U3-BKA」と「HD-NRLD4.0U3-BA」と「HD-AD4U3」は同じ | 外付けハードディスク(ハードウェア) 2466
17 Audacity で再生ボタンを押しても音が鳴らない時は、再生レべルスライダーを右にドラッグして「再生レべル:100%」にします。 | Audacity(音) 2459
18 「みまもり合図」に関する疑問。2018年 | みまもり合図(ソフトウェア) 2393
19 外付けハードディスクを収納可能な安価ラックを探す | 外付けハードディスク(ハードウェア) 2296
20 メモリ不足のため、この処理を完了できません | Windows 2292
2024/4/25 1:01 更新