くんすとの備忘録

IT系技術メモ

移転しました。

15秒後に自動的にリダイレクトします。

BAT

BATファイルで特定フォルダ以下の特定の拡張子のファイルに対して処理を実行する方法

例として以下の条件で考えます。 フォルダ: Desktop 拡張子: *.txt このとき、Desktopフォルダ以下の*.txtファイルの一覧は以下のコマンドで表示できます。 dir /s /b Desktop\*.txt /sは再帰検索、/bはファイル名のみ表示するオプションです。少し気持ち悪…

BATファイルでBOM付きUTF-8ファイルからBOMを取り除く方法

検証環境 Windows10 64bit 方法 input.txt からBOMを取り除いて、 out.txt テキストを出力する場合 start /min /wait cmd /c chcp 65001 ^& cmd /u /c type input.txt ^> $$$ ^& cmd /c type $$$ ^> out.txt ^& del $$$ コマンド自体は参考にしたところのほ…

BATファイルにシェルスクリプトを埋め込む方法

Bash on Ubuntu on Windowsによって、Windowsでカジュアルにbashを利用することが出来るようになりましたよね。 しかしながらシェルスクリプトを直接実行することはできないようです。(パスの形式が違うので関連付けで実行できない) ということで、BATファイ…

BATファイルで、テキストファイルの2行目以降を取り出す方法

BAT

こんなファイルがあって [a.txt] aaa aa bbb bb cccこのファイルから2行目以降を取り出したい(awk 'NR>1'したい)というときのやり方。 [test.bat] @echo off setlocal enabledelayedexpansion for /f "usebackq tokens=*" %%a in (a.txt) do @if "!HEAD!"=="…

BATファイルで、テキストファイルの1行目だけを取り出す方法

BAT

こんなファイルがあって [a.txt] aaa aa bbb bb cccこのファイルから1行目だけを取り出したい(head -1したい)というときのやり方。 [test.bat] @echo off for /f "usebackq tokens=*" %%a in (a.txt) do @set HEAD=%%a&goto :exit_for :exit_for echo %HEAD%…

コマンドプロンプトでファイルの拡張子を一括変換する

Windowsの標準機能を使って、ファイルの拡張子を一括変換することができます。 まず、コピー前のフォルダの中身です。 a.txt b.txt 新しいテキスト ドキュメント.txt 新規 Microsoft Word 文書.docx 特定の拡張子を書き換え 拡張子が「.txt」のファイルの拡…

コマンドプロンプトのワンライナーでズンドコキヨシ

cmd.exeでもやります。期待してましたよね?よね? 概要 最近流行の「ズンドコキヨシ問題」を、コマンドプロンプト(cmd.exe)のワンライナーで解いてみました。Javaの講義、試験が「自作関数を作り記述しなさい」って問題だったから「ズン」「ドコ」のいずれ…

【2015年度版】コマンドプロンプトのワンライナーでFizzBuzz

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの25日目、最終日の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 さて、これまでのFizzBuzz 2013年:【cmd】コマンドプロンプトでFizzBuzz - くんすとの備忘…

【吉里吉里2/KAG3】BATファイルを使ってxp3アーカイブの作成を自動化する

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの24日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 さて今回は、所属している同人ゲームサークル「月うさぎプロジェクト:同人ゲームサークル」の最新作…

うちのPCのプロビジョニング用BAT

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの23日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 さて、うちのメインマシンはLinuxでもMac OS XでもなくWindowsなんですが、数ヶ月に1回くらいのペー…

D&Dされたファイルにタイムスタンプを付けてバックアップするBATファイル

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの22日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 ちょっとしたバックアップ取得用にBATファイルを使っています。 まずはソース Archive_FLAT.bat @ech…

BATファイルでuniqコマンドを実装

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの21日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 BATファイルを使って簡易版uniqコマンドを作成します。 uniq.bat @echo off for /f "usebackq tokens…

BATファイルで、ロックファイルを使った排他制御を行う

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの20日目の記事です。19日目は @nmrmsys さんの "Tee for ToeKick 実行コマンドラインまで含めてログファイルに出力するコマンド" でした。 残りは全部自分です。最後まで駆け抜けるよ!※W…

BATファイルでUCaseとLCase

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの18日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 アドベントカレンダーを追いかけてくださっている方はお気づきかもしれませんが……間に合わなかったの…

BATファイルのサブルーチンで閏年を判定する

※これはコマンドプロンプトアドベントカレンダーの記事ではありません※なんだかシェル芸界隈で流行っているようだったのでBATファイルで参戦 サブルーチン本体 :IS_LEAP rem 年が400で割り切れると閏年 set /a rest = %1 %% 400 if %rest%==0 exit /b 0 rem …

コマンドプロンプトのワンライナーでMessageBoxを表示する3つの方法

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの16日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 タイトルのとおりです ①msgコマンドを使う msg.exeを使って、ユーザ名を自分の名前にすればポップア…

BATファイルにJScriptを埋め込む

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの15日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 さて、BATファイルにJScriptを埋め込む方法です。割りとポピュラーなので、ご存じの方はご存知かと思…

BATファイルでフィボナッチ数列(末尾再帰の展開)

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの14日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 さて、お代の通り、BATファイルでfibコマンドを実装します。 ……が、普通に作ってしまうと再帰呼び出…

コマンドプロンプトのワンラナーでyyyyMMddHHmmss形式のタイムスタンプ文字列を表示する

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの13日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。タイトルの通りです。 解 C:\Users\kunst>for /f "usebackq tokens=*" %i in (`echo %date:/=%%time::…

xargs -Iのようにコマンドの実行結果をパイプで次のコマンドに渡すBATファイル

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの12日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。BATファイルを使って、ひとつ前のコマンドの実行結果を次のコマンドに1行ずつ渡します。 each.bat @se…

BATファイルで部分文字列を得る - MID

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの11日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。BATファイルを使って、VBのMID関数みたいなコマンドを作成します。MID.bat @set str=%~1 @set /a star…

BATファイルで部分文字列を得る - RIGHT

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの10日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。BATファイルを使って、VBのRIGHT関数みたいなコマンドを作成します。 RIGHT.bat @set str=%~1 @set /a…

BATファイルで部分文字列を得る - LEFT

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの9日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。BATファイルを使って、VBのLEFT関数みたいなコマンドを作成します。 LEFT.bat @set str=%~1 @set /a le…

コマンドプロンプトで読んでおくべき7つのHELP - その⑦「call /?」

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの8日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 call /? バッチ プログラムを別のバッチ プログラムから呼び出します。 CALL [ドライブ:][パス]ファイ…

コマンドプロンプトで読んでおくべき7つのHELP - その⑥「setlocal /?」

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの7日目の記事です。 ※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 setlocal /? バッチ ファイルで環境変更のローカル化を開始します。SETLOCAL を実行した後で 変更し…

コマンドプロンプトで読んでおくべき7つのHELP - その⑤「set /?」

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの6日目の記事です。 ※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 set /? cmd.exe 環境変数を表示、設定、または削除します。 SET [変数名=[文字列]] 変数名 環境変数…

コマンドプロンプトで読んでおくべき7つのHELP - その④「for /?」

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの4日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 for /? 指定されたコマンドをファイル セットの各ファイルに対して実行します。 FOR %変数 IN (セット…

コマンドプロンプトで読んでおくべき7つのHELP - その③「if /?」

コマンドプロンプトで読んでおくべき7つのHELP - その③「if /?」 これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの3日目の記事です。 ※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 if /? バッチ プログラム中で条件処…

コマンドプロンプトで読んでおくべき7つのHELP - その②「start /?」

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの2日目の記事です。※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 start /? 指定されたプログラムまたはコマンドを実行するためにウィンドウを開きます。 START ["タイ…

コマンドプロンプトで読んでおくべき7つのHELP - その①「cmd /?」

これは、コマンドプロンプト(cmd.exe) Advent Calendar 2015 - Qiitaの1日目の記事です。 ※Windows 10 Home 64bit 搭載のcmd.exeにて検証を行っています。 cmd /? Windows コマンド インタープリターの新しいインスタンスを開始します。 CMD [/A | /U] [/Q] …