macOS shell command to create new Terminal Window

もちろん、「Shell」メニューやキーボードショートカット ⌘N (or ⌘T) で簡単に新しいターミナルウィンドウを作成することが可能です。 しかし、場合によっては、シェル コマンドを使用する方が便利なことがあります。

キーボード ショートカットまたはメニューから作成した新しいウィンドウは、常にホーム ディレクトリ ~ を現在の作業ディレクトリとして使用します。

> new # opens a new terminal window at the current working directory> new ~/Desktop # opens a new terminal window at ~/Desktop

AppleScript でうまくいかない

AppleScript を使用して最後に成功した後、これが再び最善の解決策になると思いました。 残念ながら、AppleScript の辞書のこの特定の部分は壊れています。 make new window または make new tab コマンドはエラーで失敗し、いくつかの組み合わせを試しました。

Web で検索した結果、これは長い間壊れていたようです。 フィードバック アシスタントに問題を提出しました。

AppleScript で新しいターミナル ウィンドウを作成するには、ターミナル辞書の do script コマンドを使用します。 (do shell script と混同しないでください。) この AppleScript は、私が望むことを一応やってくれますが、面倒に思えます。

tell application "Terminal" do script "cd ~/Desktop"end tell

AppleScript で新しいターミナル ウィンドウまたはターミナル タブを作成する良い方法をご存知でしたら、ぜひ教えてください。 (UI スクリプトのソリューションはありません – それ自体に問題があります。) これが役に立つかもしれない他のアイデアがいくつかあります。

Enter the open command

これらの Web 検索中に、代わりに open コマンドを使用する提案も見つけました。

シェル設定ファイル (bash, zsh) にこの関数を作成しました:

# creates a new terminal windowfunction new() { if ]; then open -a "Terminal" "$PWD" else open -a "Terminal" "$@" fi}

これで、

> new Projects/desktoppr

と入力して新しいターミナル ウィンドウを取得できます。 これは、履歴置換変数 !$ (前のコマンドの最後の引数) と組み合わせると非常に便利です:

> mkdir Projects/great_new_tool> new !$

また、予想外の、しかし便利な副作用として、new 関数は新しいウィンドウで ssh セッションを開くことができます:

> new ssh://[email protected]

あなたもこれが役に立つと思います!

ありがとうございました。

コメントを残す

メールアドレスが公開されることはありません。