Linux中最常用的目录导航命令

仅个人想法,会持续不间断更新和改进。

在Linux世界中,为了更加高效地浏览和定位文件,需要一些常用的目录导航命令。 

探索未知世界的cd

cd 命令应该是除了 ls 命令外用的最多的命令了。除非你大门不出二门不迈,做个大家闺秀。

cd 命令的含义为

cd – change directory

可以让我们访问不同的文件夹。

最简单的用法为:$ cd /the/path/you/want/to/go/

接下来说一些技巧,让效率加倍。

让cd命令对参数大小写不敏感

如果你需要同时显示大写和小写的目录名(即便是你给的参数只是小写的),执行下面的bind命令,此时就可以避免Linuxlinux的尴尬。$ bind “set completion-ignore-case on”

进入刚才的目录

想要进入刚才进入的地方(目测没有很多人再用,但是真的很好用)运行:$ cd –

快速返回家目录

需要快速地回到你的家目录,输入cd即可,这里其实不用一级一级的进入$ cd

进入某用户的家目录

这个需要你有root权限cd ~username

进入username的家目录。

这些是一些比较基础和入门的,还有一些高级一点的,这些技巧可能用的比较少,不过也是很有帮助的。

结合CDPATH的妙用

变量CDPATH定义了目录的搜索路径:$ export CDPATH=/the/path/you/add/:/another/path/

现在,不用输入cd /the/path/you/add/hello/ 这样长了,我可以直接输入下面的命令进入 /the/path/you/add/hello/:$ cd html

!$

这个命令目测,用的人不多,其实比较有用,且有效。$ cd !$

表明的意思是将上一个命令的参数作为cd的参数来使用。

用shopt –s cdspell自动纠正cd命令的目录名输入错误

使用shopt -s cdspell可以自动修正cd时拼写错误的目录名。

如果你在输入时经常犯些错误,这个命令是很有用的。详见以下示例:# cd /etc/mall
-bash: cd: /etc/mall: No such file or directory
# shopt -s cdspell
# cd /etc/mall
# pwd
/etc/mail

注: 当我错误的把mail敲成了mall,用这个命令mall就自动被换成了mail

最常用的且没有之一的  ls

如果linux命令来个排名,ls命令应该是最常用的命令,除非你像黄蓉的母亲,有过目不忘的本领,惹得黄药师抱憾终身。

ls命令是list的缩写,通过ls命令,我们可以查看目录的内容,确定各种重要文件和目录的属性。

命令格式

ls [参数] [路径]

不加任何参数

如果不加任何参数,默认列出当前目录的内容。$ ls /etc/sysconfig/network-scriptsifcfg-em1ifcfg-em2ifcfg-em3ifcfg-em4   ….

使用-l显示更多细节

-l 就是使用long listing format长格式,来显示更多的内容信息。$ ls -l /etc/sysconfig/network-scriptstotal 264-rw-r–r–. 1 root root   341 Nov 30 10:56 ifcfg-em1-rw-r–r–. 1 root root   294 May 13  2016 ifcfg-em2-rw-r–r–. 1 root root   272 May 10  2016 ifcfg-em3-rw-r–r–. 1 root root   272 May 10  2016 ifcfg-em4……

使用-t按照时间排序

如果希望看到最近创建的文件,就需要用到-t参数了。$ ls -lt /etc/sysconfig/network-scripts/total 264-rw-r–r–. 1 root root   341 Nov 30 10:56 ifcfg-em1-rw-r–r–. 1 root root   294 May 13  2016 ifcfg-em2-rw-r–r–. 1 root root   272 May 10  2016 ifcfg-em4-rw-r–r–. 1 root root   272 May 10  2016 ifcfg-em3…

使用-r按照时间逆序

如果希望删除很早以前的文件,看到最早创建的文件,就需要用到-r参数了。$ ls -ltr /etc/sysconfig/network-scripts/total 264…-rw-r–r–. 1 root root   272 May 10  2016 ifcfg-em3-rw-r–r–. 1 root root   272 May 10  2016 ifcfg-em4-rw-r–r–. 1 root root   294 May 13  2016 ifcfg-em2-rw-r–r–. 1 root root   341 Nov 30 10:56 ifcfg-em1

使用-S根据文件大小排序

$ ls -lS /etc/sysconfig/network-scripts/total 264…-rw-r–r–. 1 root root   341 Nov 30 10:56 ifcfg-em1-rw-r–r–. 1 root root   294 May 13  2016 ifcfg-em2-rw-r–r–. 1 root root   272 May 10  2016 ifcfg-em3-rw-r–r–. 1 root root   272 May 10  2016 ifcfg-em4

查看目录命令pwd

pwd命令的作用是查看当前目录,没有参数,输入后回车即可显示当前绝对路径。

官方定义为:

pwd – print name of current/working directory

所以pwdPrint Working  Directory第一个字的缩写。

唯二需要了解的参数如下:

  • -L--logical:打印逻辑路径,与pwd一致
  • -P--physical:打印物理路径,这里可以从超级链接直达原处

实例展示

此时比如我们进入一个目录,然后在打印出来,如下:$ cd /etc/sysconfig/network-scripts/
$ pwd/etc/sysconfig/network-scripts

可以看到pwd将输出完全路径

逻辑与物理路径

比如如下:$ pwd/opt/test
$ ls -l总用量 1lrwxrwxrwx  1 root root   14 Jan 15 2012 dir -> source/dirdrwxrwxrwx  1 root root   14 Jan 15 2012 source

可以看到此时的路径在/opt/test/里面有两个目录source和dir,其中dir链接到source里面的dir。

接下来对比一下-L和-P的区别。$ cd dir
$ pwd/opt/test/dir
$ pwd -L/opt/test/dir
$ pwd -P/opt/test/source/dir

从上面的输出可以发现,-P参数会显示文件最原始的路径;而-L则是逻辑上的路径。

Linux tree命令

Linux tree命令以树状图列出目录的内容。

执行tree指令,它会列出指定目录下的所有文件,包括子目录里的文件。

官方定义为:

tree – list contents of directories in a tree-like format.

使用方法为:$ tree [-acdfghilnpqrstuvxACDFQNSUX] [-L level [-R]] [-H baseHREF] [-T title] [-o filename] [–nolinks] [-P pattern] [-I pat‐       tern] [–inodes] [–device] [–noreport] [–dirsfirst] [–version] [–help] [–filelimit  #] [–si] [–prune] [–du]       [–timefmt format] [–matchdirs] [–fromfile] [–] [directory …]

参数比较多,也比较复杂。其中常用的选项为:

  • -d 显示目录名称而非内容。
  • -D 列出文件或目录的更改时间。

实例 默认显示

默认显示当前目录的信息,比如tree和tree .的含义一样。命令有如下输出结果:$ tree   .├── a├── aa│   ├── aab│   ├── aac│   ├── aad│   └── aae├── b├── bb│   └── bbb├── c├── d├── e└── f
2 directories, 11 files

只显示目录

$ tree -d         .├── aa└── bb

显示具体的修改时间

$ tree -D.├── [Apr 7 22:34] a├── [Apr 7 22:37] aa│   ├── [Apr 7 22:35] aab│   ├── [Apr 7 22:35] aac│   ├── [Apr 7 22:35] aad│   └── [Apr 7 22:35] aae├── [Apr 7 22:34] b├── [Apr 7 22:39] bb│   └── [Apr 7 22:39] bbb├── [Apr 7 22:34] c├── [Apr 7 22:34] d├── [Apr 7 22:33] e└── [Apr 7 22:33] f
2 directories, 11 files

默认情况下tree可能没有安装,可以通过apt/yum install tree来安装。

声明:文中观点不代表本站立场。本文传送门:https://eyangzhen.com/389505.html

(0)
联系我们
联系我们
分享本页
返回顶部