Linux 命令行的世界 :2.文件系统中跳转

我们需要学习的第一件事(除了打字之外)是如何在 Linux 文件系统中跳转。在这一章节中,我们将介绍以下命令:
pwd 打印出当前工作目录名
cd 更改目录
ls 列出目录内容

Linux以分层目录结构来组织所有文件。这就意味着所有文件组成了一棵树型目录,这个目录树可能包含文件和其它的目录。文件系统中的第一级目录称为根目录。根目录包含文件和子目录,子目录包含更多的文件和子目录,依此类推。

Linux,总是只有一个单一的文件系统树(通常这是一棵倒置的树,也就是说,树根在最上面,而各个枝干在下面展开。),不管有多少个磁盘或者存储设备连接到计算机上。根据负责维护系统安全的系统管理员的兴致,挂载到目录树的各个节点上。

我们所在的目录则称为当前工作目录。我们使用 pwd(print working directory(的缩写))命令,来显示当前工作目录。

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

当我们首次登录系统后,当前工作目录是我们的根目录。

列出一个目录包含的文件及子目录,使用 ls 命令。

bash 复制代码
[root@localhost /]# ls
ATO     bin   copylog  etc   lib    media  opt   root  sbin  sys  usr
backup  boot  dev      home  lib64  mnt    proc  run   srv   tmp  var

要更改工作目录,我们用 cd 命令。输入 cd, 然后输入你想要去的工作目录的路径名。路径名就是沿着目录树的分支到达想要的目录期间所经过的路线。路径名可通过两种方式来指定,一种是绝对路径,另一种是相对路径。

绝对路径开始于根目录,紧跟着目录树的一个个分支,一直到达所期望的目录或文件。例如,你的系统中有一个目录,大多数系统程序都安装在这个目录下。这个目录的路径名是 /usr/bin。它意味着从根目录(用开头的"/"表示)开始,有一个叫"usr" 的目录包含了目录 "bin"。

bash 复制代码
[root@localhost var]# cd /usr/bin
[root@localhost bin]# pwd
/usr/bin

我们把工作目录转到 /usr/bin 目录下,注意shell 提示符是怎样改变的吗?为了方便,通常终端提示符自动显示工作目录名。

相对路径开始于工作目录。为了做到这个(用相对路径表示),我们在文件系统树中用一对特殊符号来表示相对位置。这对特殊符号是 "."(点)和 ".." (点点)。符号 "." 指的是工作目录,".." 指的是工作目录的父目录。比方说我们想更改工作目录到 /usr/bin 的父目录 /usr。比方说我们想更改工作目录到 /usr/bin 的父目录 /usr。

bash 复制代码
#使用绝对路径
[root@localhost bin]# cd /usr/
[root@localhost usr]# pwd
/usr

#使用相对路径
[root@localhost usr]# cd /usr/bin/
[root@localhost bin]# cd ..
[root@localhost usr]# pwd
/usr

同样地,从目录 /usr/ 到 /usr/bin 也有两种途径。

bash 复制代码
#使用绝对路径
[root@localhost usr]# cd /usr/bin/
[root@localhost bin]# pwd
/usr/bin

#使用相对路径
[root@localhost usr]# cd ./bin/
[root@localhost bin]# pwd
/usr/bin

有一件很重要的事,我必须指出来。在几乎所有的情况下,你可以省略 "./"。它是隐含的。如果不指定一个文件的路径,那它被默认为在当前工作目录下。

bash 复制代码
[root@localhost bin]# cd ..
[root@localhost usr]# pwd
/usr
[root@localhost usr]# cd bin
[root@localhost bin]# pwd
/usr/bin

关于文件名的重要规则

  1. 以 "." 字符开头的文件名是隐藏文件。这仅表示,ls 命令不能列出它们,用 ls-a 命令就可以了。

  2. 文件名和命令名是大小写敏感的。文件名"File1"和"file1"是指两个不同的文件名。

  3. Linux 没有"文件扩展名"的概念。

  4. 虽然 Linux 支持长文件名,文件名可能包含空格,标点符号,但标点符号仅限使用".","-",下划线。最重要的是,不要在文件名中使用空格。如果你想表示词与词间的空格,用下划线字符来代替。

最后祝大家龙年大吉!!

版权声明

版权声明:
本文参考了THE LINUXCOMMAND LINE by William Shotts,
本文内容为我阅读过程中精简后的记录笔记整理而成。
推荐大家去读原书哦!
相关推荐
C++忠实粉丝31 分钟前
Linux环境基础开发工具使用(2)
linux·运维·服务器
康熙38bdc1 小时前
Linux 环境变量
linux·运维·服务器
存储服务专家StorageExpert1 小时前
DELL SC compellent存储的四种访问方式
运维·服务器·存储维护·emc存储
hakesashou2 小时前
python如何比较字符串
linux·开发语言·python
Ljubim.te2 小时前
Linux基于CentOS学习【进程状态】【进程优先级】【调度与切换】【进程挂起】【进程饥饿】
linux·学习·centos
cooldream20092 小时前
Linux性能调优技巧
linux
大G哥2 小时前
记一次K8S 环境应用nginx stable-alpine 解析内部域名失败排查思路
运维·nginx·云原生·容器·kubernetes
醉颜凉2 小时前
银河麒麟桌面操作系统修改默认Shell为Bash
运维·服务器·开发语言·bash·kylin·国产化·银河麒麟操作系统
QMCY_jason3 小时前
Ubuntu 安装RUST
linux·ubuntu·rust
慕雪华年3 小时前
【WSL】wsl中ubuntu无法通过useradd添加用户
linux·ubuntu·elasticsearch