1.pwd命令
目录是 Linux 的基本组成部分,目录管理包括目录的复制、删除、修改等操作。
在 linux 层次结构中,想要知道当前所处的目录,可以用 pwd 命令,该命令输出当前工作目录的完整名称。环境变量
OLDPWD 表示前一次的工作目录,环境变量 PWD 表示当前的工作目录。
命令名称: pwd
命令全称:
Print Working Directory
基本语法: pwd【选项】...
功能描述:打印当前工作目录的完成文件名
pwd 命令比较简单,默认情况下,不需要带任何参数,执行该命令显示当前路径。如果当前路径有软连接,显示链接路径而非实际路径,使用选项 P 可以显示当前路径的实际路径。
![](https://img-blog.csdnimg.cn/721909fb8f6945aaa299a6315cf4122f.png)
查看默认工作目录的完整路径:
[sara@localhost ~]$ pwd
/home/sara
查看指定文件夹:
[sara@localhost ~]$ cd /usr/bin/
[sara@localhost bin]$ pwd
/usr/bin
查看上一次的工作目录与当前的工作目录:
[sara@localhost ~]$ pwd
/home/sara
[sara@localhost ~]$ echo $OLDPWD
[sara@localhost ~]$ echo $PWD
/home/sara
[sara@localhost ~]$ cd /etc/init.d
[sara@localhost init.d]$ pwd
/etc/init.d
[sara@localhost init.d]$ echo $OLDPWD
/home/sara
[sara@localhost init.d]$ echo $PWD
/etc/init.d
内建命令pwd和外部命令/bin/pwd还是有区别的,在显示当前目录时,/bin/pwd显示得更准确
些,而pwd容易被操作者糊弄。
2.cd命令
cd 命令用于切换工作目录为指定的目录,参数可以为相对路径或者绝对路径。如果不带任何参数,则切换至用户的主目录,cd 为最常用的命令,与 DOS 下的 cd 命令类似。
命令名称:cd
命令全称:Change Directory
基本语法:cd[dir]
功能描述:切换当前目录至dir
示例:使用绝对路径(以/开始)。切换至指定目录
[sara@localhost ~]$ pwd
/home/sara
[sara@localhost ~]$ cd /
[sara@localhost /]$ pwd
/
[sara@localhost /]$ cd /home/
[sara@localhost home]$ pwd
/home
使用相对路径,切换至指定目录
[sara@localhost home]$ pwd
/home
[sara@localhost home]$ ls
sara
# 使用相对路径(相对于当前目录)
[sara@localhost home]$ cd sara/
[sara@localhost ~]$ pwd
/home/sara
切换至当前目录的上一级目录(用..表示)
[sara@localhost ~]$ pwd
/home/sara
[sara@localhost ~]$ cd ../
[sara@localhost home]$ pwd
/home
[sara@localhost home]$ cd ../
[sara@localhost /]$ pwd
/
从 /home/sara/a 目录切换至 /home/sara/b
[sara@localhost ~]$ cd a/
[sara@localhost a]$ pwd
/home/sara/a
# ../ 为上级目录,即:/home/sara
[sara@localhost a]$ cd ../b/
[sara@localhost b]$ pwd
/home/sara/b
*******注意:如果只有一个目录以 t 开头,将会移动到该目录;如果有很多目录以 t 开头,将会移动到第一个以 t 开头的目录(按照字典里字母的顺序)*******
3.tree命令
使用 tree 命令以树状图递归的形式显示各级目录,可以方便地看到目录结构
大部分Linux中默认事没有安装tree命令,需要切换至root,进行安装:
[root@localhost ~]# yum install tree
选项说明:
- -a 显示所有文件和目录
- -C 为文件和目录清单加上色彩,便于区分各种类型
- -d 显示目录名称而非内容
- -D 列出文件或目录的更改时间
- -f 在每个文件或目录之前,显示完整的相对路径名称
- -F 在执行文件、目录、Socket、符号连接、管道名称前,分别加上“*”、“/”、“=”、“@”、“|”符号
- -g 列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码
- -i 不以阶梯状列出文件或目录名称
- -l 如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录
- -s 列出文件或目录大小
- -u 列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码
- -x 将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该子目录予以排除在寻找范围外
4.mkdir
创建目录( make directories )
命令功能:通过 mkdir 命令可以实现在指定位置创建以 DirName(指定的目录名)命名的文件夹/目录。要创建文件夹或目录的用户必须对所创建的文件夹的
父文件夹有写权限
。并且,所创建的文件夹/目录不能与其父文件夹/目录中的文件夹/目录重名,即同一个目录下不能有同名(区分大小写)的文件夹/目录。
命令格式:#mkdir[选项][目录名]
常用命令参数:
- -p --parents:创建多级目录
- -m --mode:模式,设定权限(类似 chmod )
- -v --verbose:创建新目录时显示信息
创建权限为777的目录dir777
[sara@localhost ~]$ mkdir dirmode
[sara@localhost ~]$ dir
dirmode
[sara@localhost ~]$ ls -ld dirmode
drwxrwxr-x. 2 sara sara 6 Apr 1 09:29 dirmode
[sara@localhost ~]$ mkdir -m 777 dirmode777
[sara@localhost ~]$ ls -ld dirmode777
drwxrwxrwx. 2 sara sara 6 Apr 1 09:30 dirmode777
[sara@localhost ~]$
5.rmdir
删除目录(remove directories)
命令功能:删除指定的目录,删除的目录必须为空目录或为多级空目录。
命令格式:# rmdir [选项] [目录名]
常用命令参数:
- --ignore-fail-on-non-empty:忽略仅由目录非空产生的所有错误
- -p --parents:递归删除多级目录
- -v --verbose:删除目录时显示信息
6.Is命令
ls 命令是 Linux 下最常用的命令。默认情况下,ls 用来打印当前目录的清单,如果 ls 指定其他目录,那么就会显示指定目录里的文件及文件夹清单。通过 ls 命令,不仅可以查看 linux 文件夹包含的文件,而且可以查看文件的权限(包括:目录、文件权限)、查看目录信息等。
命令名称:Is
命令全称:list
基本语法:ls [选项]… [文件]…
功能描述:列出文件(默认情况下,为当前目录)的相关信息
命令选项:
- -a 列出目录下所有文件,包括以 . 开头的隐藏文件
- -b 把文件名中不可输出的字符用反斜杠加字符编号(就像 C 语言一样)的形式列出
- -c 输出文件的 i 节点的修改时间,并以此排序
- -d 将目录像文件一样显示,而不是显示其下的文件
- -e 输出时间的全部信息,而不是输出简略信息
- -f -U 对输出的文件不排序
- -i 输出文件的 i 节点的索引信息
- -k 以 k 字节的形式表示文件的大小
- -l 列出文件的详细信息
- -m 横向输出文件名,并以 , 作为分隔符
- -n 用数字 UID、GID 代替名称
- -o 显示文件除组信息外的详细信息
- -r 对目录反向排序
- -s 对每个文件名后输出该文件的大小
- -t 以时间排序
- -u 以文件上次被访问的时间排序
- -v 根据版本进行排序
- -x 按列排序,横向排序
- -A 显示除 . 和 .. 外的所有文件
- -B 不输出以 ~ 结尾的备份文件
- -C 按列输出,纵向排序
- -G 列出文件的组的信息
- -L 列出链接文件名,而不是链接到的文件
- -N 不限制文件长度
- -Q 把输出的文件名用双引号扩起来
- -R 列出所有子目录下的文件
- -S 以文件大小排序
- -X 以文件的扩展名(最后一个 . 后的字符)排序
- -1 一行只输出一个文件
- -color=no 不显示彩色文件名
- --help 在标准输出上显示帮助信息并退出
- --version 在标准输出上显示版本信息并退出
文件类型:
使用 ls -l 命令查看某一目录,会得到一个包含 9 个字段的列表。第 1 行显示的信息是总用量,这个数值是该目录下所有文件占用空间的大小。接下来的每一列第 1 个字符显示文件类型。(- :普通文件,d :目录,l :链接文件,b :块设备文件,c :字符设备文件,p :命令管道文件,s :sock 文件)
使用 -l 选项(小写 L 字符),可以展示出文件类型、大小、修改日期和时间、权限以及链接等详细信息。
[sara@localhost doc]$ ls -l
总用量 4
drwxrwxr-x. 2 sara sara 6 9月 28 15:19 c
drwxrwxr-x. 2 sara sara 6 9月 28 15:19 linux
drwxrwxr-x. 2 sara sara 6 9月 28 15:20 php
-rw-rw-r--. 1 sara sara 42 9月 28 15:39 program
drwxrwxr-x. 2 sara sara 23 9月 28 15:20 python
第 1 列:后 9 个字母表示该文件或目录的权限位,
r 表示读
,
w 表示写
,
x 表示执行
。前 3 个 rwx
字符是
文件的拥有者权限
,第二组 3 个 rwx 是
文件的所属组权限
,最后的 rwx 是
其他人访问文件的
权限
。
第 2 列:文件的硬链接数
第 3 列:文件的拥有者
第 4 列:文件的拥有者所在的组
第 5 列:文件的大小,如果是目录,表示该目录的大小。注意:是目录本身的大小,而非目录及其
下面的文件的总大小。
第 6 列:文件或目录的最近修改时间
第 7 列:文件名