如何从终端浏览一个目录?


16

超级菜鸟问题:我可以使用cd终端在目录中向下导航。如果我走得太远,该如何导航?



unix.stackexchange.com/a/81232/18237非常适合在多个目录分支中工作,并且标记出一个“起点”可以回到
Mateo

我知道你们谁都不愿意承认自己这么愚蠢,但是这个问题只引起了1000次观看。所以哈哈,我知道其他像我这样的人在那里。:P
文斯·斯卡利亚

Answers:


30

cd .. 将带您回到一个目录。

您可以将它们串在一起以进入多个目录,例如,向上3

cd ../../..

您无需将其键入cd ..多次,而只需将下面的函数.bashrc放在顶部的某个位置,保存.bashrc并运行,source .bashrc或者关闭然后重新打开终端即可。现在,您有一个函数可以执行cd..告诉您的次数。

function goUp {
  num=$1
  while [ $num -ne 0  ];do
    cd ..
    num=$((num-1))
  done
}

演示:

$ cd /usr/share/backgrounds/                                                  

backgrounds:$ goUp 2

usr:$ 

或者:

goup(){ 
    cd $(n=$1 awk 'BEGIN{
        for(i=1;i<=ENVIRON["n"];i++) 
            printf "../"}';) 
}

请注意,这种方法将您带回符号链接。这就是我的意思:

$ namei "$PWD" 
f: /home/user/VirtualBox VMs/CentOS
 d /
 d home
 d user
 l VirtualBox VMs -> /mnt/ubuntu/vboxvms
   d /
   d mnt
   d ubuntu
   d vboxvms
 d CentOS

$ goup 2
$ pwd
/home/user

也可以看看


添加了更多信息,请检查一下。
Sergiy Kolodyazhnyy

那可能仅仅是for i in $(seq "$1"); do cd ..; done
2015年

@deltab是,也可以这样做。。。。但我更喜欢使用while +计数器来模拟for循环。我之前在U&L网站上问过一个相关问题
Sergiy Kolodyazhnyy 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.