2011-07-31 14 views
5

私は自分の入力に基づいて特定のフォルダに行くことを可能にするバッチファイルを持っています。実行の終わりにウィンドウタイトルでpowershellを起動するには?

d: 
cd d:\test\bits 
@ECHO off 
cls 
:start 
ECHO. 
ECHO 1. Perl 
ECHO 2. Python 
set choice= 
set /p choice=type in number to go to appropriate code folder: 
if not '%choice%'=='' set choice=%choice:~0,1% 
if '%choice%'=='1' goto pl 
if '%choice%'=='2' goto py 
ECHO "%choice%" is not valid, try again 
ECHO. 
goto start 
:pl 
cd code\pl 
goto end 
:py 
cd code\py 
goto end 
:end 
start "bits" 

、タイトル「ビット」を使用して、コマンドプロンプトウィンドウが開き、入力の選択に対応する指定されたディレクトリです。これはすべていいです。しかし、私はPowershellで同じことをしたいと思っています。

start "bits"の代わりに、start powershellを最後の行に入力すると、Powershellコンソールを開くことができます。これを行うことで、私は2つの問題があります。

  1. Powershellコンソールはまだd:\test\bitsというフォルダにあり、私が意図したものではありません。
  2. 私はタイトルが、私はPowerShellを使用し、私が欲しい機能を取得するにはどうすればよいbits

であることを得ることができませんか?私は何を期待して、私はあなたのスクリプトで再現することができた、現在のディレクトリはタイトル部分について

(私は1を入力した場合d:\test\bits\code\pl)は、次の操作を行うことができます意図いずれかに設定されているから、

答えて

8

start powershell -NoExit -command "$Host.UI.RawUI.WindowTitle = 'bits'" 
+0

ここでタイトルを設定できます。しかし、私の場合、現在のディレクトリは意図したものに設定されていません。 cmdがPowershellを起動している最後の行に到達した後、元のバッチファイルのコマンドを記憶していない状態で新しく開始されたようです。私はあなたがそれをやっているかどうかはわかりません。 – Animesh

+0

@steeluser - あなたが投稿した正確なスクリプトと、私が投稿したpowershellの最後の行を変更してみました。期待どおりに動作しています。あなたとは何が違っているのか分かりません。どのようなOS btw? – manojlds

+0

私の間違い。私のprofile.ps1のプロンプト機能が 'd:\ test \ bits'を開くように設定されていることを理解するまでにはしばらく時間がかかりました。ご協力いただきありがとうございます。 – Animesh

関連する問題