ECHO コマンドを使用すると任意の文字列を画面に表示することができます。ここではバッチファイルの中で使用できる ECHO コマンドの使い方について解説します。なお ECHO コマンドはエコー機能のON/OFFを切り替えるでも使います。
バッチ処理でフォルダ内のファイルの名前と拡張子の間に文字を追加したくなりました。 renameコマンドで変更したいのでとりあえず無理だろうと思いつつ下記のように記述して動かして見ました。 @echo off rename *.txt *テスト.txt 結果は当然ダメ。ファイル名の末尾に変更したいファイル名が追加されただけでした。 変更前 変更後 想定している結果にするにはDOSコマンドを使えばいい事が分かりました。 以下のパーセントコマンドを使うことでうまくいきました。 「%~n変数」:変数から拡張子とパスを除いたファイル名を取得する。 「%~x変数」:変数から拡張子を取得する。 FORコマンドでファイル名を取得して、上記コマンドを使ってファイル名変更処理をします。 @echo off for %%A in (*.txt) do ( rename %%A %%~nAテスト%%~xA ) %
set BEFORE_STRING=こんにちは set AFTER_STRING=HELLO set INPUT_FILE=input.txt set OUTPUT_FILE=output.txt setlocal enabledelayedexpansion for /f "delims=" %%a in (%INPUT_FILE%) do ( set line=%%a echo !line:%BEFORE_STRING%=%AFTER_STRING%!>>%OUTPUT_FILE% ) このように上記コマンドを実行することで「こんにちは」という文字列が「HELLO」に置換されます。 2. 構文 2-1. ファイル読み込み まず、ファイルを一行ずつ読みこむ際にはfor文を使用します。 for文を使用するときは以下のコマンドをあらかじめ実行します。 setlocal enabledelay
たとえばライセンス管理コマンドのslmgrを使ってみる。 通常はPOPUPとしてメッセージが出るがそこをテキストファイルに出力する。 cscript //nologo c:\Windows\System32\slmgr.vbs >> d:\slmgr.txt □ファイル名:slmgr.txt コマンド パラメーターの組み合わせが無効です。 Windows ソフトウェア ライセンス管理ツール 使用法: slmgr.vbs [コンピューター名 [ユーザー パスワード]] [<オプション>] コンピューター名: リモート コンピューターの名前 (既定はローカル コンピューター) ユーザー: リモート コンピューターに必要な特権があるアカウント パスワード: 以前のアカウントのパスワード グローバル オプション: /ipk <プロダクト キー> プロダクト キーをインストールする (既存のキーが上
バッチファイル中で、数字や時刻などをファイル名として使いたい バッチファイルの中で、日付や時間をベースにしたファイル名のファイルを作成し、そこに結果を保存したいといった場合は意外と多いだろう。 例えば、システムデータやユーザーファイルをバックアップし、バックアップ先のフォルダやファイル名に、その日の日付を反映した名前を付けたいといった場合である。例えば、「systemconfig-20221221」「user1-20230501」などと付ければ、いつバックアップしたかすぐ分かるだろう。 本Tech TIPSでは、バッチファイル内で日付と時刻の情報を取得して、ファイル名やフォルダ名として利用するためのテクニックを紹介する。鍵となるのは「date」「time」という変数の扱い方である。 まずバッチファイルの基本から知りたいなら、Tech TIPS「Windowsのバッチファイルの基本的な使い方
開発者はパスを欲しがる 例えば ライブラリのパスを設定するとき コンパイラの検索パスを設定するとき SDK のパスを設定するとき などなど こんな時、エクスプローラからパスをコピーして、ファイル名をコピーして、とかやりますよね。 正直、メンドイ 右クリック SendTo に、パスをクリップボードに入れてくれるアプリがあればいいのに! 作りました そもそもは Delphi で作って長年使ってました。 でも、よくよく考えたらバッチファイルでできんじゃね!? となって、バッチファイルで作ってみました。 if /i "%~x1"==".lnk" (for /f "delims=" %%f in ('type "%~f1" ^| find "\" ^| find "."') do set /p<NUL="%%f" | clip) else set /p<NUL="%~f1" | clip
Windows10では、コマンドプロンプト(cmd.exe)が強化されて使いやすくなりました。Windowsの標準作法である CTRL+C/CTRL+V によるコピペ操作がコマンドプロンプトで使用できるようになりました。 コマンドプロンプト・プロパティのオプションタグに「コンソールの新機能の詳細」というリンクがあります。 このリンクをクリックして、マイクロソフト TechNetの 「What’s New in the Windows Console in Windows Server 2016 Technical Preview」というページを見ます。 You can copy and paste text in the console using keyboard commands. CTRL+C now serves two functions. If no text is selec
64bit版Windowsでは16bitのDOSアプリは動かなくなったが 32bitのコンソールアプリは動作可能 「コマンドプロンプト」や「WSL」(Windows Susbsytem for Linux)を使う場合に利用するのが「コンソール」ウィンドウだ。このコンソールウィンドウは、テキスト主体のアプリケーションを実行する環境である。 Windowsでは、その祖先にあたるMS-DOSのアプリケーションをサポートするためにコンソールウィンドウが作られ、Windows XPまでは、16bitアプリケーションとしてMS-DOSアプリを動作できた。64bit版のVistaからは16bitアプリケーションのサポートはなくなったが、32bitのコンソールアプリケーションは実行できる。 もともとコンソールとは、ハードウェアとして、テキストの表示とキーボードからの入力をサポートしたもので、OSの支援など
どんなに制限をかけられた環境でもcmd.exeさえ起動できれば何でもできます(何でもできるとは言っていない)。しかし仕事柄アホほど制限された環境に遭遇することがあるんです。そんな制限された環境で意地でもcmd.exeを起動する方法を紹介します。 すべてのプログラムからコマンドプロンプトを起動する。 すべてのプログラムにコマンドプロンプトがない → c:\windows\system32\cmd.exeを直接起動する。 Cドライブにアクセスできない → 「ファイル名を指定して実行」にcmdと入力して起動する。 Win+rが起動しないまたは「ファイル名を指定して実行」から実行できない → タスクマネージャ → ファイル → 新しいタスクの作成 → cmdを起動する。 タスクマネージャで新しいタスクの作成ができない → Explorerのアドレス欄にcmdと入力して起動する。 Explorerの
こんにちは。らくからちゃです。 今日も、東京も東京証券所も雨模様ですね。昨日よりかは、多少小雨になってきたようですが、遠くの方に台風が見えるのが気になります。最大瞬間風速50メートル以上と、大変強力な台風なので、お庭においてあるあれやこれも、ポートフォリオも吹き飛ばされないようにご警戒ください。 さて、自己紹介のところでも書かせて頂いていますが、なんちゃってコンサルタントをやらせて頂いております。ただ、システムのインストールやら、アドオン開発のテストなどなどで、見よう見まねでエンジニアっぽいことをやっている時も御座います。(到底本職の人には敵いませんが・・・) まあお客様がご利用している端末がWindowsであることが殆どですので、システムをメンテナンスする際にもWindowsのコンソール機能である『コマンドプロンプト』を使うことになります。このコマンドプロンプト、ちょっとした小技で随分い
Windows 10 TPでは今になってなぜか、「コマンドプロンプト」(cmd.exe)の機能がいくらか強化されている。GUIでは面倒な操作も、CUIのコマンドプロンプトなら簡単にできることは今でも少なくない。バッチファイルを用意すれば、繰り返しや定型的な処理も簡単に実行できる。コマンドプロンプトの基本的な使い方については関連記事を参照していただきたい。 コマンドプロンプトの機能が大きく強化されるのは、「Windows 2000」(2000年2月発売)で「拡張機能」が導入された時以来のはずなので、実に15年ぶりということになる。今になって機能を強化するのは、いまだにコマンドプロンプトに対する需要や不満があるということなのだろうが、可能ならもっと早く実装しておいてほしかった。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く