CentOS 7基础操作05_Linux查看及切换目录

1、pwd命令------查看当前的工作目录(Print Working Directory)

pwd命令用于显示用户当前所在的工作目录位置,工作目录是用户操作文件或其他子目录的默认位置起点。使用pwd命令可以不添加任何选项或参数。例如,root用户在/root目录中执行pwd命令时若输出信息为/root",则表示当前的工作目录位于/root,具体操作如下:

复制代码
  [root@blab ~]# pwd
  /root

2、cd命令------切换工作目录( Change Directory)

cd命令用于将用户的工作目录更改到其他位置、通常使用需要切换到的目标位置(文件夹路径)作为参数,若不指定目标位置,默认将切换到当前用户的宿主目录(家目录)宿主目录是LiInux用户登录系统后默认的工作目录,例如.以下操作将把工作目录更改为/boot/grub并执行Pwd命今确认当前所处位置。

复制代码
[root@blab ~]# cd /boot/grub
[root@blab grub]# pwd
/boot/grub

在Linux操作系统中表示某个目录(或文件)的位置时,根据其参照的起始目录不同,可以使用两种不同的形式、分别称为绝对路径和相对路径。

  • 绝对路径:这种方式以根目录/作为起点,如/boot/grub"表示根目录下boot子目录中的grub目录、若要确切表明gub是一个目录(而不是一个文件),可以在最后也加上一个目录分隔符.如表示为"/boot/gub/",因为Linux操作系统中的根目录只有一个,所以不管当前处于哪个目录中,使用绝对路径都可以非常准确地表示一个目录(或文件)所在的位置、但是如果路径较长,输入的时候会比较烦琐。
  • 相对路径:这种方式一般以当前工作目录作为起点,在开头不使用/符号,因此使用的时候更加简短、便捷。相对路径主要包括如下几种形式:
    • 直接使用目录名或文件名表示当前工作目录中的子目录.文件的位置,例如grub.conf"可表示当前目录下的grub. conf 文件.
    • 使用一个点号 "." 开头可明确表示以当前的工作目录作为起点。例如 ./grub,conf 也可表示当前目录下的grub conf文件,
    • 使用两个点号".."开头表示以当前目录的上一级目录(父目录)作为起点,例如,若当前处于/boot/grub/目录中,则"../vmlinuz"等同于"/boot/ vmlinuz.
    • 使用"~用户名"的形式开头表示以指定用户的宿主目录作为起点,省略用户名时默认为当前用户。例如."~teacher"表示 teacher用户的宿主目录,而"~可表示当前用户的宿主目录。

相比较而言,使用相对路径表示目录(文件)的路径形式灵活多变,通常用于表示当前目录附近"的目录(文件)位置:而绝对路径常用来表示Linux操作系统中目录结构相对稳定(不经常改变)的目录(文件)位置。因此在使用相对路径或绝对路径时,应根据实际情况进行选择。

执行cd命令时,还可以使用一个特殊的目录参数"-"(减号)表示上一次执行cd命令之前所处的目录。例如,以下操作先通过执行"cd~"命令(与单独执行'cd"命令效果相同)切换到当前用户的宿主目录,然后执行"cd -"命令返回原来所在的目录位置。

复制代码
[root@blab grub]# pwd
/boot/grub
[root@blab grub]# cd ~
[root@blab ~]# pwd
/root
[root@blab ~]# cd -
/boot/grub
[root@blab grub]#

3、ls命令------列表(List)显示目录内容

ls 命令主要用于显示目录中的内容,包括子目录和文件的相关属性信息等。使用的参数可以意目录名,也可以是文件名,允许在同一条命令中同时使用多个参数。

ls命令可以使用的选项种类非常多,这里只列出几个最常用的选项以供参考。

  • -l:以长格式(Long)显示文件和目录的列表,包括权限.大小,最后更新时间等详细信息。不使用-l选项时.Is命令默认以短格式显示目录名或文件名信息。
  • -a:显示所有(AlI)子目录和文件的信息,包括名称以点号"."开头的隐藏目录和隐藏文件。
  • -A:与-a选项的作用基本类似,但有两个特殊隐藏目录不会显示,即表示当前目录的"."和表示父目录的".."
  • -d:显示目录(Directory)本身的属性,而不是显示目录中的内容。
  • -h:以更人性化(Human)的方式显示目录或文件的大小,默认的大小单位为字节(B)使用-h选项后将显示为KB、MB等单位。此选项需要结合-l选项一起使用。
  • -R:以递归(Recursive)的方式显示指定目录及其子目录中的所有内容

执行不带任何选项,参数的Is命令,可显示当前目录中包含的子目录、文件列表信息(不包括隐藏目录,文件).如以下操作:

复制代码
[root@blab grub]# ls
splash.xpm.gz

执行"ls -ld"命令可以只显示当前目录的详细属性,而不显示目录下的内容,如以下操作

复制代码
[root@blab grub]# ls -ld
drwxr-xr-x. 2 root root 27 5月   3 12:14 .

ls命令可以同时查看多个文件的信息。例如.以下操作可以同时查看两个文件"/etc/yum.conf"和"/boot/vmlinuz-3.10.0-957.el7.x86_64"的信息,结合"-h"选项可以以更易读的长格式显示,

复制代码
[root@blab grub]# ls -lh /etc/yum.conf /boot/vmlinuz-3.10.0-957.el7.x86_64 
-rwxr-xr-x. 1 root root 6.4M 11月  9 2018 /boot/vmlinuz-3.10.0-957.el7.x86_64
-rw-r--r--. 1 root root  970 11月  5 2018 /etc/yum.conf

使用ls命令时,还可以结合通配符"?"或"*"以提高命令编写效率。其中,问号"?"可以匹配文件名中的一个未知字符,而星号"*"可以匹配文件名中的任意多个字符。这两个通配符同样也适用于Shell环境中的其他命令。例如,以下操作将以长格式列出/etc/目录下以"ns开头.conf"结尾的文件信息。

复制代码
[root@blab grub]# ls -lh /etc/ns*.conf
-rw-r--r--. 1 root root 1.8K 5月   3 12:15 /etc/nsswitch.conf

【注意】

对于经常使用的比较长的命令行,可以通过 alias 别名机制进行简化,以提高使用效率。例如,执行"alias myls =' Is-alh'"命令可以定义一个名为myls 的命令别名,以后再执行"myls"命令时即等同于执行"1s -alh"命令。

4、du命令------统计目录及文件的空间占用情况(Disk Usage)

du命令可用于统计指定目录(或文件)所占用磁盘空间的大小,使用目录或文件的名称作为参数,du命令常用的几个选项如下。

  • -a:统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录。
  • -h:以更人性化的方式(默认以KB计数.但不显示单位)显示出统计结果,使用-h选项后将显示出KB、MB等单位。
  • -s:只统计每个参数所占用空间总的(Summary)大小,而不是统计每个子目录、文件的大小。

如果需要统计一个文件夹内所有文件总共占用的空间大小,可以结合"-sh"选项,将要统计的目录作为参数。例如,执行"du -sh /var/"命令可以统计出/var /log目录所占用空间的大小,具体操作如下;

复制代码
[root@blab grub]# du -sh /var/
1.3G  /var/

如果需要分别统计多个文件所占用的空间大小,可以结合"---ah选项,当使用目录作为参数时最后将列出该目录总共占用的空间大小。例如,执行"du -ah /boot"命令将分别统计/boot目录中所有文件、子目录各自占用的空间大小,具体操作如下:

复制代码
[root@blab ~]# du -ah /boot/
4.0K  /boot/efi/EFI/centos/BOOT.CSV
4.0K  /boot/efi/EFI/centos/BOOTX64.CSV
1.2M  /boot/efi/EFI/centos/MokManager.efi
1.2M  /boot/efi/EFI/centos/mmx64.efi
1.2M  /boot/efi/EFI/centos/shim.efi
1.2M  /boot/efi/EFI/centos/shimx64-centos.efi
1.2M  /boot/efi/EFI/centos/shimx64.efi
0 /boot/efi/EFI/centos/fw
68K /boot/efi/EFI/centos/fwupia32.efi
76K /boot/efi/EFI/centos/fwupx64.efi
5.9M  /boot/efi/EFI/centos
......
相关推荐
SZ17011023110 分钟前
IGP(Interior Gateway Protocol,内部网关协议)
运维·服务器·gateway
moxiaoran575319 分钟前
Spring Cloud Gateway 动态路由实现方案
运维·服务器·前端
运维日常手记38 分钟前
最新1.33.1 k8s高可用集群搭建(免翻墙)
运维
爱瑞瑞1 小时前
🐧深入浅出的认识 Linux 指令
linux·shell
星哥说事1 小时前
开源综合性网络安全检测和运维工具-TscanClient
运维·web安全·开源
ajassi20001 小时前
开源 java android app 开发(十一)调试、发布
android·java·linux·开源
小李飞刀李寻欢1 小时前
使用kubeadm部署Kubernetes(k8s)集群的步骤
linux·服务器·ubuntu·kubernetes·k8s
运维成长记2 小时前
阿里云实践创建实例步骤
linux·运维·服务器·阿里云·云计算
THe CHallEnge of THe BrAve2 小时前
Linux检验库是否安装成功
linux·运维·服务器
Hello.Reader2 小时前
NGINX 四层 SSL/TLS 支持ngx_stream_ssl_module
运维·nginx·ssl