根据先前的操作在unix中更改目录(cd)

根据先前的操作在unix中更改目录(cd)

不久前,我看到一篇博客文章,介绍了一种节省 unix 时间的技巧,但我怎么也想不起来,而且手册页中也没有列出。

基本上,这是一种进入刚刚复制或移动某些内容的目录的方法。例如:

$pwd
/home/stedy
$mv temp /projects/trunk
$cd something
$pwd
/projects/trunk

有人见过这种情况吗? cd 命令之后我忘记了什么?

答案1

一种选择是使用历史命令:

$pwd
/home/stedy
$mv temp /projects/trunk
$cd !:2
$pwd
/projects/trunk

!:2接受上一个命令的第二个参数。您可以使用修饰符来极大地改变乐趣,您最好的朋友是man bashinfo bash并寻找历史扩展(和修饰符)。

答案2

在 Bash、ksh 和 zsh 中,您可以按Alt-.来获取上一个命令的最后一个参数。该按键实际上被指定为Meta- .,这通常意味着按下然后Esc.但该组合键通常可用。请注意,下划线可以代替点。有关更多信息,Alt请参阅的 Readline 部分。该函数称为。man bashreadlineyank-last-arg

答案3

在大多数 shell 中,上一个命令中给出的最后一个参数是$_

mkdir /some/dir
cd $_
# now in /some/dir

相关内容