背景
人の端末で作業したり、人に作業をお願いするときに「あ、あのコマンドが使えない」とか、割と頻繁に発生します(よね?)。
そういう時に重宝するのがWindowsの標準で使える機能を。基本的なものから、少しトリッキーなものまで、よく使うもの、役に立ったものを雑多にメモしていこうと思います。逐一更新していこうかと。
> DIR
のように先頭に`>'が付いてる例はコマンドプロンプトから実行するという意味です。
ショートカット系
エクスプローラーで表示中のディレクトリをコマンドプロンプトで開く
Shiftキー + エクスプローラの空白部分右クリック ⇛ 「コマンドウィンドウでコマンドウィンドウをここで開く」
意外と知らない人が多いようなので・・・
一つ上のディレクトリを開く
Altキー + ↑
ファイルの名前の変更
ファイル、ディレクトリを選択してF2キー
コマンドプロンプトを開く
Windowsマーク + R ⇛ "cmd"とタイプ ⇛ エンター
Windowsマーク + R
でファイル名を指定して実行
が開き。cmdでコマンドプロンプト実行
電卓を開く
Windowsマーク + R ⇛ "calc"とタイプ ⇛ エンター
メモ帳を開く
Windowsマーク + R ⇛ "notepad"とタイプ ⇛ エンター
ペイントを開く
Windowsマーク + R ⇛ "mspaint"とタイプ ⇛ エンター
再起動(リモートデスクトップとかバッチとかから)
> SHUTDOWN /R /T 0
/R
で再起動/T 0
で0秒後を指定。/R
の代わりに/S
でシャットダウン。
ファイル操作系
ファイルの比較(diffの超簡易版)
> COMP ファイル1 ファイル2
ディレクトリツリーを表示
> TREE /F
ディレクトリのみでよければ
> TREE
標準の機能とはちょっとずれるけど、よくリダイレクトと組み合わせて
> TREE /F > tree.txt
↓
tree.txt をサクラエディタで開く
↓
矩形選択で相対パスだけ切り抜いてコピー
↓
エクセルに貼っつけ
↓
数式を駆使してコピーコマンド作成
↓
コマンドプロンプトに貼り付けて実行
とかやってます。
ファイル一覧を取得
> DIR /S /B
tail -f
結論からいうと標準で簡単な方法はない。何かしらのソフトを入れたほうが楽。
一応バッチを作ることは可能なようだが・・・そこまでするならね・・・
⇛http://scripting.cocolog-nifty.com/blog/2007/05/tail_f_0b9c.html
Twitter4Jで有名な山本 裕介さんの侍とか入れたほうがいいんじゃないか?
ファイルを新規作成
echo > (ファイル名)
リダイレクトでテキストファイルを作ってるだけだけど・・・
テキストファイルを標準出力に
> type (ファイル名)
ページャー
> MORE (ファイル名)
もしくは
コマンド | MORE
プロセス系
タスク一覧
> TASKLIST
プロセスを強制終了
> TASKKILL /IM /F nnotepad.exe
他にもpid指定で終了とかワイルドカードとか使えるのでたまに使う。
ネットワーク系
自端末のipを調べる
> IPCONFIG
ping
> PING (ipアドレス)
名前解決
> NSLOOKUP (IPアドレス or ホスト名、ドメイン名)
ホスト名⇛IPアドレス の変換だったらping打つ事のほうが多いかも
コマンド系
コマンドのヘルプを表示
windows標準のコマンドならばほとんどのコマンドで以下のように/?
をつけることでHELPが表示される。(Linux系のmanコマンドみたいなもん?)
> (コマンド) /?
環境変数を確認
> SET [変数名]
環境変数を変更
> SET 変数名=値
環境変数を参照
%変数名%
のようにコマンド内に%
で囲まれた文字があった場合、実行時に値に変換されてから実行します。C言語のマクロのようなイメージです。その文字列に置き換えられてから実行されるので
> SET HOGE=cd
> %HOGE&
とすれば結果としてcd
コマンドが実行されます。
コマンドの実行結果を環境変数に代入
> FOR /F "usebackq" %i IN (`コマンド`) DO SET 変数名=%i
> ECHO 変数名=%変数名%
linuxなら``変数名=`コマンド```で一発なのにね・・・
コマンドの実行結果で挙動を変える
> コマンド
> IF NOT "%ERRORLEVEL%"=="0" (
> 異常終了時の処理
> )
あるいは
> コマンド
> IF errorlevel 1 (
> 異常終了時の処理
> )
違いは調べて。