在 Linux 中不使用 CD 命令进入目录/文件夹的方法

众所周知,如果没有 cd 命令,我们无法 Linux 中切换目录。这个没错,但我们有一个名为 shopt 的 Linux 内置命令能帮助我们解决这个问题。

shopt 是一个 shell 内置命令,用于设置和取消设置各种 bash shell 选项,由于它已安装,因此我们不需要再次安装它。

是的,我们可以在启用此选项后,可以不使用 cd 命令切换目录。

我们将在本文中向你展示如何操作。这是一个小的调整,但对于那些从 Windows 迁移到 Linux 的新手来说非常有用。

这对 Linux 管理员没用,因为我们不会在没有 cd 命令的情况下切换到该目录,因为我们对此有经验。

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

$ Documents/
bash: Documents/: Is a directory

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

什么是 .bashrc ?

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

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

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

$ vi ~/.bashrc

加入这一行:

shopt -s autocd

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

$ source ~/.bashrc

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

$ Documents/
cd -- Documents/
$ daygeek/
cd -- daygeek/
$ /home/daygeek/Documents/daygeek
cd -- /home/daygeek/Documents/daygeek
$ pwd
/home/daygeek/Documents/daygeek

是的,它正如预期的那样正常工作。

而且,它在 fish shell 中工作正常,而无需对 .bashrc 进行任何更改。

如果要暂时执行此操作,请使用以下命令(设置或取消设置)。重启系统时,它将消失。

# shopt -s autocd
# shopt | grep autocd
autocd on
# shopt -u autocd
# shopt | grep autocd
autocd off

shopt 命令提供了许多其他选项,如果要验证这些选项,请运行以下命令。

$ shopt
autocd on
assoc_expand_once  off
cdable_vars   off
cdspell   on
checkhash  off
checkjobs  off
checkwinsize  on
cmdhist   on
compat31  off
compat32  off
compat40  off
compat41  off
compat42  off
compat43  off
compat44  off
complete_fullquote on
direxpand  off
dirspell  off
dotglob   off
execfail  off
expand_aliases on
extdebug  off
extglob   off
extquote  on
failglob  off
force_fignore  on
globasciiranges on
globstar  off
gnu_errfmt off
histappend on
histreedit off
histverify off
hostcomplete  on
huponexit  off
inherit_errexit off
interactive_comments  on
lastpipe  off
lithist   off
localvar_inherit  off
localvar_unset off
login_shell   off
mailwarn  off
no_empty_cmd_completion off
nocaseglob off
nocasematch   off
nullglob  off
progcomp  on
progcomp_alias off
promptvars on
restricted_shell  off
shift_verbose  off
sourcepath on
xpg_echo  off

此外,我找到了一些其他程序,它们可以帮助我们在 Linux 中比 cd 命令更快地切换目录。

它们是 pushd、popd、up shell 脚本和 bd 工具。我们将在接下来的文章中介绍这些主题。

via: https://www.2daygeek.com/navigate-switch-directory-without-using-cd-command-in-linux/

总结

以上所述是小编给大家介绍的在 Linux 中不使用 CD 命令进入目录/文件夹的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • Linux常见英文报错中文翻译(菜鸟必知)

    1.command not found 命令没有找到 2.No such file or directory 没有这个文件或目录 3.Permission denied 权限不足 4.No space left on device 磁盘没有剩余空间 5.File exists 文件已经存在 6.Is a directory 这是1个目录 7.Not a directory 不是1个目录 8.Warning: Changing a readonly file 警告:改变一个只读文件 9.Found

  • linux下查看so或可执行程序的依赖库

    在linux下查看so或可执行程序的依赖库 Linux下可执行程序包括可执行程序exe和so, 两者文件都是ELF打头的. objdump -x libxxxxx.so | grep NEEDED objdump -x 可执行程序名 | grep NEEDED 或 arm-hisiv300-linux-objdump -x 可执行程序 | grep NEEDED arm-hisiv300-linux-readelf -a 可执行程序 | grep NEEDED linux之如何查看哪些进程在使用

  • linux中chmod命令用法详解

    chmod命令语法 这是使用chmod命令时的正确语法: chmod [options] mode [,mode] file1 [file2 ...] 以下是chmod使用的一些常用选项: ● -f, - silent, - quiet(抑制大多数错误消息) ● -v, - verbose(为每个处理的文件输出诊断信息) ● -c, - changes(类似于详细但仅在进行更改时报告) ● -R, - recursive(递归更改文件和目录) ● --help(显示帮助和退出) ● --vers

  • Linux下源码包安装Swoole及基本使用操作图文详解

    本文实例讲述了Linux下源码包安装Swoole及基本使用操作.分享给大家供大家参考,具体如下: 下载Swoole PECL扩展源码包:http://pecl.php.net/package/swoole 关于PHP版本依赖选择: 下载好放到/usr/local/src下,解压缩: tar -zxvf swoole-2.2.0.tgz 准备扩展安装编译环境: phpize 查看php-config位置: find / -name php-config 配置:(--with-php-config=

  • linux环境搭建图数据库neo4j的讲解

    Neo4j(Nosql之一)是一个高性能的图数据库(不支持分布式), 在社交关系中经常用到.关于Neo4j的介绍,网上多的是, 故不再赘述.来简要说说安装: 1.安装jdk,不多说: ubuntu@VM-0-15-ubuntu:~$ java -version openjdk version "1.8.0_151" OpenJDK Runtime Environment (build 1.8.0_151-8u151-b12-0ubuntu0.16.04.2-b12) OpenJDK 6

  • Linux下Tomcat的几种运行方式讲解

    Linux下Tomcat的启动.关闭 在Linux系统下,启动和关闭Tomcat使用命令操作. 进入Tomcat下的bin目录 cd /java/tomcat/bin 启动Tomcat命令 ./startup.sh 停止Tomcat服务命令 ./shutdown.sh 执行tomcat ./shutdown.sh 后,虽然tomcat服务不能正常访问了,但是ps -ef | grep tomcat 后,发现tomcat对应的java进程未随web容器关闭而销毁,进而存在僵尸java进程.网上看了

  • 详解Linux安装教程

    (Win7系统)VMware虚拟机安装教程 VMware是虚拟机普遍使用的的一款软件,该软件方便实用,但想必有很多新接触的新手还是很陌生的,小编在这里就简要的来介绍一下安装过程以及遇到的问题,下面我们一起来看看吧. 工具:①VMware ②win7镜像文件(可在百度下载) 步骤: 1.首先,我们打开VMware软件,进去虚拟机首页,如下图所示: 2.点击创建新的虚拟机,进入新建虚拟机界面,会有典型和自定义高级选项,默认选项是典型,我们保持默认选项,点击下一步: 3.点击下一步后会进入新建安装虚拟

  • linux环境不使用hadoop安装单机版spark的方法

    大数据持续升温, 不熟悉几个大数据组件, 连装逼的口头禅都没有. 最起码, 你要会说个hadoop, hdfs, mapreduce, yarn, kafka, spark, zookeeper, neo4j吧, 这些都是装逼的必备技能. 关于spark的详细介绍, 网上一大堆, 搜搜便是, 下面, 我们来说单机版的spark的安装和简要使用. 0.  安装jdk,  由于我的机器上之前已经有了jdk, 所以这一步我可以省掉. jdk已经是很俗气的老生常谈了, 不多说, 用java/scala的

  • linux下搭建scala环境并写个简单的scala程序

    在linux下安装scala环境很简单, 如果是ubuntu环境, 那就更简单了, 直接apt-get搞定, 我就是用的ubuntu.  java/scala系都需要基于jdk, 所以首先要安装jdk. 1.  安装jdk, 老生常谈, 不值得一说. 2.  安装scala, 如下: sudo apt-get install scala 如下: ubuntu@VM-0-15-ubuntu:~/taoge/scala$ scala -version Scala code runner versio

  • 查看远程 Linux 系统中某个端口是否开启的三种方法

    这是一个很重要的话题,不仅对 Linux 管理员而言,对于我们大家而言也非常有帮助.我的意思是说对于工作在 IT 基础设施行业的用户来说,了解这个话题也是非常有用的.他们需要在执行下一步操作前,检查 Linux 服务器上某个端口是否开启. 假如这个端口没有被开启,则他们会直接找 Linux 管理员去开启它.如果这个端口已经开启了,则我们需要和应用团队来商量下一步要做的事. 在本篇文章中,我们将向你展示如何检查某个端口是否开启的 3 种方法. 这个目标可以使用下面的 Linux 命令来达成: nc

随机推荐