5

一般来说,我必须打两个命令:

$ mkdir dir_name
$ cd dir_name

创建目录并转到它。

有没有我们可以在上面实现的单个命令?

4

5 回答 5

6

您可以在您的.bash_profile

function mkdircd () { mkdir -p "$@" && eval cd "\"\$$#\""; }

并像这样使用它:

mkdircd test_folder
于 2013-10-05T12:06:00.750 回答
4

您可以将它们组合成一个命令:

$ mkdir dir_name && cd dir_name

请注意,只有在前半部分成功时,后半部分才会运行。也就是说,如果你的目录已经存在,它不会改变目录。

如果您想更改目录,请改用分号:

$ mkdir dir_name; cd dir_name
于 2013-10-05T12:05:11.890 回答
2

你可以这样尝试:-

$ mkdir dir_name && cd dir_name
于 2013-10-05T12:05:35.293 回答
2

是的,你可以这样做

$ mkdir dir_name && cd dir_name

shell 将解释&&为逻辑AND. 使用&&第二个命令时,仅当第一个命令成功时才执行(返回零退出状态)。

于 2013-10-05T12:05:53.563 回答
2

仍然是两个命令,但如果你只是想避免输入两次目录名,你可以这样做:

$ mkdir name
$ cd !$
于 2013-10-05T12:09:38.933 回答