8

私はしばらくの間、Linux コンソールを使用しています。私を苛立たせていることの 1 つは、 を使用して新しいディレクトリを作成するたびに、そのディレクトリに変更しmkdirなければならないことです。cd作成したばかりのディレクトリを作成して切り替える単一のコマンド ソリューションはありますか?

今私は:

mkdir php5
cd php5

僕にできる:

mkdir -someswitch php5

シンプルでクリーンなものが欲しい。良い例はgit branch somebranch、新しいブランチを作成し、新しいブランチgit checkout -b somebranchを作成して切り替えることです。

4

7 に答える 7

8

これを行う移植可能な方法は、bash 関数ではなくシェル関数を使用することです ( のような bashims を使用しますfunction)。.profileこれをインタラクティブな使用に関連するものに入れます:

 mkdir () {
    case $1 in
       (-c) command mkdir -p "$2" && cd "$2";;
       (*)  command mkdir "$@";;
    esac
 }

これにより、インタラクティブに使用-cするためのオプションが追加されます。mkdirユーティリティがなければ-c、いつものように機能します。- の引用符に注意してください"$2"。これは、名前に空白が含まれるディレクトリで機能します。

于 2013-04-28T10:15:35.073 に答える
3

独自のエイリアスや小さなスクリプトを作成することを妨げるものは何もありません

mkdir $1 && cd $1
于 2013-04-28T09:56:31.327 に答える
2

または、「;」を使用できます 次のようにコマンドを区切ります。

mkdir php5.3 ; CD php5.3

于 2013-04-28T10:01:09.017 に答える
-1

これを行うには、bash で関数を定義できます。

function mkcd() {
    mkdir $1 && eval cd $1
}
于 2013-04-28T09:56:49.547 に答える