現: 2022-03-29 (火) 07:55:17 yuji ソース
Line 1: Line 1:
 +* コマンドプロンプトでエリアスを設定する [#lc137cc1]
 +コマンドプロンプト(cmd.exe)で別名でコマンド(エイリアス)を設定する場合,例えば,
 + doskey l=dir $*
 +で,別名(エイリアス)が設定出来る。
 +上記の場合は,lがエイリアス名で,dirがコマンド名,$*が引数になります。~
 +コマンドプロンプトを起動し,上記コマンドを実行した後だと,lと打つだけでディレクトリの中身が見られるようになる!
 +
 +しかし,起動したコマンドプロンプト(cmd.exe)でのみ有効になる。そのため,コマンドプロンプト(cmd.exe)を起動するたびに実行する必要がある。
 +
 +普通は,コマンドプロンプトを起動するBATファイルを作成して,その中でdoskeyコマンドで設定することをします。~
 +cmd.batの例:~
 + @echo off
 + cd /D %HOME%
 + doskey ls=ls --color=auto --show-control-chars $*
 + %COMSPEC% /D
 + exit
 +
 +しかしコマンドプロンプト(cmd.exe)の代わりにcmd.batを使うのも面倒ではある。
 +
 +bashだと.bashrcに設定しておけば良いわけだが,コマンドプロンプトでもこのようにしたい。~
 +そこで,コマンドプロンプトが起動する度に,設定ファイルを自動的に実行されるようにしてみる。
 +
 +** コマンドプロンプトが起動する度に自動的に実行されるようにする [#o773735f]
 +まず,設定したいエイリアスを列挙したファイルを作成します。~
 +例として,.cmdrcというファイルを作成します。
 +
 +''.cmdrc''~
 + clear=cls
 + ls=ls --color=auto --show-control-chars $*
 + ll=ls --color=auto --show-control-chars -l $*
 + l=ls --color=auto --show-control-chars -CF $*
 + cd=cd /D $*
 + vi=C:\WinApl\vim\vim.exe $*
 + sa=C:\WinApl\sakura\sakura.exe $*
 + xn=C:\WinApl\Graphics\XnViewPortable\XnViewPortable.exe $*
 + pw = pwd $*
 + u= cd ../
 + tf=tree /f $*
 + history=doskey /history
 + alias=doskey /macros
 + ee=explorer .
 + sort=C:\msys64\usr\bin\sort.exe $*
 +ファイルを置く場所は,環境変数USERPROFILEで設定されているホームディレクトリにします。Windows 7で標準だと''C:\Users\ユーザ名''になる。
 +
 +次に,このファイルをコマンドプロンプト起動時に自動的に読み込まれるようにレジストリを編集します。
 + > reg add "HKEY_CURRENT_USER\Software\Microsoft\Command Processor" /v AutoRun /d "doskey /macrofile=%USERPROFILE%\.cmdrc"
 +これで設定が毎回読み込まれ,エイリアスが使えるようになります。
 +
 +環境変数HOMEで設定されているホームディレクトリにする場合は,
 + > reg add "HKEY_CURRENT_USER\Software\Microsoft\Command Processor" /v AutoRun /d "doskey /macrofile=%HOME%\.cmdrc"
 +にすれば良い。
 +
 +''エイリアスの追加''~
 +新たなエイリアスを追加したくなった場合は,.cmdrcへ追記すればOK。
 +
 +** DOSKEYのパイプなど [#c7ac3458]
 +DOSKEYのマクロ登録に,パイプ等を使う場合は,特殊な記号を使わないとダメ。
 + >    -->  $g
 + >>  -->  $g$g
 + <    -->  $l
 + |    -->  $b
 + &    -->  $t
 + $(文字としての$)  -->  $$
 + バッチファイルの%1-%9と同じ  -->    $1~$9
 + マクロ名に続くテキストで置き換えられるシンボル  -->  $*
 +
 +また,マクロファイル内でコメントアウトしたい場合は,;= を使えばいいみたい。
  

  • PC/Windows/コマンドプロンプトでエリアスを設定する のバックアップ差分(No. All)
    • 現: 2022-03-29 (火) 07:55:17 yuji

トップ   差分 バックアップ 複製 名前変更 リロード   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom
Counter: 842, today: 1, yesterday: 0