云网牛站
所在位置:首页 > Linux命令 > 使用shopt:在没有cd命令的Linux中进入目录/文件夹内部

使用shopt:在没有cd命令的Linux中进入目录/文件夹内部

2019-03-15 15:55:26作者:戴进稿源:云网牛站

众所周知,如果没有cd命令,我们无法进入到在Linux内的目录中,但我们有一个名为shopt的Linux内置命令可以帮助我们解决这个问题。

 

前言

shopt是一个shell内置命令来设置和取消设置各种bash shell选项,这是默认装载的,我们不需要再次安装它,我们可以在启用此选项后在没有cd命令的进入目录内,参考:shopt命令_Linux shopt命令使用详解:显示与设置shell操作选项

我们将在本文中向你展示如何执行此操作,这是一个小小的调整,但对于那些从Windows迁移到Linux的新手来说非常有用,对于很多Linux管理员来说,不会在没有cd命令的情况下进入到该目录,但是现在起我们对此有一个很好的做法。

如果你尝试在没有cd命令的情况下进入Linux中的目录/文件夹,将收到以下错误消息,这在Linux中很常见:

$ Documents/

bash: Documents/: Is a directory

为此,我们需要在用户.bashrc文件中附加以下值。

 

更改.bashrc文件及使用shopt

“.bashrc”文件是一个shell脚本,每次用户以交互模式打开新shell时都会运行该脚本。

你可以在该文件中添加要在命令提示符下输入的任何命令。

.bashrc文件本身包含终端会话的一系列配置,这包括设置或启用:着色、完成、shell历史、命令别名等:

$ vi ~/.bashrc

shopt -s autocd

运行以下命令以使更改生效:

$ source ~/.bashrc

参考:什么是bashrc配置文件,如何对其进行编辑

我们已完成所有配置,简单地对此进行测试以确认这是否有效:

$ Documents/

cd -- Documents/

$ daygeek/

cd -- daygeek/

$ /home/daygeek/Documents/daygeek

cd -- /home/daygeek/Documents/daygeek

$ pwd

/home/daygeek/Documents/daygeek

使用shopt:在没有cd命令的Linux中进入目录/文件夹内部

以上得出,它能正常的工作。

但是,它在fish shell中工作正常,而不对.bashrc文件进行任何更改:

使用shopt:在没有cd命令的Linux中进入目录/文件夹内部

如果要暂时执行此操作,请使用以下命令(set/unset),重新启动系统时,这将消失:

# shopt -s autocd

# shopt | grep autocd

autocd on

# shopt -u autocd

# shopt | grep autocd

autocd off

shopt命令提供了许多其它选项,如果要验证这些选项,请运行shopt命令:

使用shopt:在没有cd命令的Linux中进入目录/文件夹内部

 

相关主题

cd命令_Linux cd命令使用详解:切换用户当前工作目录

Linux命令子频道
精选文章
热门文章