Windowsでコマンドプロンプトを開いたときに、特にいくつかのコマンドエイリアスを設定するために、いくつかのコンソールコマンドを自動的に実行する方法を探しています。
たとえば、コマンドプロンプトを開いたときに、次のようなコマンドを自動的に実行して、のls
代わりに使用できるようにしdir
ます。
doskey ls=dir
これをどのように行うことができますか?
cmd.exe
。
Windowsでコマンドプロンプトを開いたときに、特にいくつかのコマンドエイリアスを設定するために、いくつかのコンソールコマンドを自動的に実行する方法を探しています。
たとえば、コマンドプロンプトを開いたときに、次のようなコマンドを自動的に実行して、のls
代わりに使用できるようにしdir
ます。
doskey ls=dir
これをどのように行うことができますか?
cmd.exe
。
回答:
ログインしたときではなく、起動時にロードする場合、XP Proを使用している場合(XPホームにはgpedit.mscは含まれません)、次のようにします。
スタート>実行> gpedit.msc
Enterキーを押します。次に、コマンドラインからgpupdate / forceを実行します。
に行く
[コンピューターの構成]> [Windowsの設定]> [スクリプト]> [起動]
スクリプトに場所を追加します。
以下のユーザーログオンに対してもこれを行うことができます
[ユーザーの構成]> [Windowsの設定]> [スクリプト]> [起動]
XP Homeがある場合、スクリプトを次のいずれかにコピーできます。
C:\ Windows \ System32 \ GroupPolicy \ Machine \ Scripts \ Startup
起動時にそれらをロードするため、または:
C:\ Windows \ System32 \ GroupPolicy \ User \ Scripts \ Logon
ログオン時にユーザーにロードするため。GroupPolicyフォルダーは非表示です。
コマンドエイリアスは、構成するコンソールウィンドウに固有であるため、起動スクリプトは機能しません。次の方法で実行できます。
doskeyコマンドでバッチファイル(.cmd
)を作成し、アプリケーションデータのどこかに配置します。
cmdを開くたびに自動的に起動するように設定します。設定はレジストリにあります:
HKCU\SOFTWARE\Microsoft\Command Processor
AutoRun
"%AppData%\aliases.cmd"
if exist "%AppData%\aliases.cmd" "%AppData%\aliases.cmd"
MicrosoftのCMDは、Win32コンソールサブシステムに依存して、コマンドエイリアスメカニズムを提供しています。doskey
このコマンドは、実際のプロセスのコンソールと相互作用し、そしてそれは別名を保持しているコンソールそのものです。したがって、エイリアスはコンソールごとで一時的です。
JP SoftwareのTCC / LEは、エイリアス自体を処理します。このalias
コマンドにより、「ローカル」または「グローバル」のエイリアスを表示および操作できます。エイリアスはまだ一時的ですが、1つのコマンドインタープリタープロセス専用であるか、すべてのコマンドインタープリタープロセス間で共有されます(すべてのコンソール間)。
以下のようなシェルKornシェルでSFUAユーティリティツールキットで実行するツール- UNIXベースアプリケーション用サブシステムのWindows 7 Ultimateの各エディションおよびWindows Server 2008 R2でのボックスに右が来る(Windows XPの場合、1が可能ダウンロードしてインストールServices for UNIX version 3.5。)—およびcygwinの Bourne Againシェルも同様にエイリアス自体を処理します。エイリアスは一時的なものであり、コマンドインタープリタープロセスごとです。
いずれの場合でも、何らかのスクリプトにエイリアスを設定するコマンドを配置します。
grawity
MicrosoftのCMDが起動時にコマンドを実行する2つのレジストリキーのいずれかを既に指定しています。残念ながら、エイリアス自体はコンソールごとに保存されますが、これはコマンドインタープリタープロセスごとです。最初のコマンドインタープリターからセカンダリコマンドインタープリターを起動すると、デフォルトのエイリアスに対する手動の変更がリセットされます。少なくともコンソールごとに1回だけ初期化を実行する別の方法は、コマンドインタープリターを起動するショートカットのコマンドテール/K
を呼び出すコマンドスクリプトのオプションと名前を追加することdoskey
です。
JP SoftwareのTCC / LE は、TCSTART
起動時にスクリプトを自動的に実行します。繰り返しますが、これはコマンドインタープリターごとのプロセスです。ただし、TCCの「ローカル」エイリアスはコマンドインタープリタープロセスごとでもあるため、ローカルエイリアスを使用している場合、これはエイリアスを初期化する適切な場所です。グローバルエイリアスの場合は、Startup
フォルダーにショートカットを作成して、ファイルからエイリアスを読み込み(を使用alias /r
)、shralias
コマンドを実行して、ショートカットの実行が終了した後もそれらが保持されるようにします。
Bourne AgainシェルとKornシェルの場合、他のプラットフォームでこれらのシェルを使用する場合と同じように実行します。Bourne Againシェルのおよびスクリプトでalias
コマンドを使用します。Kornシェルの、ENV、およびスクリプトでコマンドを使用します。$HOME/.profile
$HOME/.bashrc
alias
$HOME/.profile
$HOME/.kshrc
Gravityの答えは私にとってはとてもうまくいきました。
Documentsフォルダーにshell-aliases.cmdスクリプトを作成しました(後で見つけることができます)。
次に、レジストリキーに「AutoRun」エキスパンド文字列値を作成しました。
「HKEY_CURRENT_USER \ Software \ Microsoft \ Command Processor」
値をエイリアスファイルへのフルパスに設定します(私の場合は 'C:\ Users \ Lee \ Documents \ shell-aliases.cmd'にありました)。
コマンドプロンプトをリロードすると、doskeyエイリアスが機能しました。さらに、エイリアスファイルには簡単にアクセスでき、追加する必要があると思うので編集する準備ができています。
ここでの問題は、起動時に実行すると、これらの置換は開いたCMDプロンプトでのみ利用可能になることです。閉じた場合、これらの置換はすべて失われ、開かれたすべてのコマンドプロンプトに対して再度実行する必要があります。
したがって、いくつかの代替方法(それらを組み合わせることができます):