1、目录操作
目录操作中要注意以下特殊的目录
. 表示本层目录
.. 表示上一层目录
- 表示前一个工作目录
~ 当前用户所在的目录
~account 表示account这个用户的目录
要搞清楚其中的含义:
root 表示当前的登录用户是root
localhost表示主机名
~表示当前用户所在的目录,这里~表示root用户的目录
2、目录切换 cd
当前虚拟机上有两个用户,一个是root,另一个是rhx用户
3、显示当前所在目录 pwd
[root@localhost ~]# pwd [-P]
参数: -P 显示当前所在的目录
当前root用户在目录/rhx下
4、创建新目录 mkdir
[root@localhost ~]#mkdir [-mp] 目录名称
参数:
-m 配置文件的权限,直接设置,不需要默认的权限
-p 递归创建目录
在/tmp目录下创建 /test目录,同时在该目录下递归创建/test1/test2/test3目录
指定创建文件的权限为711
切换到之前创建的/test1目录下
目录文件 /test2 创建时使用的是默认权限,为755
5、删除目录 rmdir
[root@localhost ~]#rmdir [-p] 目录名称
/tmp 目录下有三个子目录,分别是/test1 ,/test2和/testing目录,而test1下有/test2/test3的目录,进行递归删除,使用-p
6、查看文件与目录 ls
作为最常用的命令之一的 ls 命令,其有着较多的参数选项,其中-a -d -l是最常用的选项参数
[root@localhost ~]#ls [-aAdfFhilnrRSt] 目录名称
[root@localhost ~]#ls [--color={never,auto,always}] 目录名称
[root@localhost ~]#ls [--full-time] 目录名称
参数:
-a 全部的文件,包括 .开头的隐藏文件在内
-A 全部文件,但是不包括隐藏文件
-d 列出目录文件
-f 直接列出结果,不进行排序,ls命令默认为进行排序
-F 根据文件目录信息给予附加的数据结构,其中*表示可执行文件,/表示目录,=表示socket文件,| 表示FIFO文件
-h 将文件以人类较容易读方式进行显示,如显示为GB,M,k的形式
-i 列出inode节点号
-l 列出长数据串,包含文件的属性和权限等数据
-R 连同子目录一起列出来,相当于该目录下所有文件都会显示出来
-S 以文件大小进行排序显示,默认是以文件名进行排序显示
-t 以时间顺序进行排序
--color=never不按照文件特性给予颜色显示
--color=always显示颜色
--color=auto让系统进行判断是否显示颜色
--full-time,以完整的时间模式显示,时间按照年月日时分秒输出
7、复制、删除、移动 cp,rm,mv
[root@localhost ~]#cp [-adflprsu] 源文件(source) 目标文件(destination)
[root@localhost ~]#cp [-options] source1 source2 ... directory
参数解读:
-a 相当于 -pdr 的组合
-d 若源文件为链接文件属性,则复制链接文件;如果不加-d表示复制的是源文件
-f force之意,若目标文件已经存在且无法开启,则删除后再尝试一次
-i 若目标文件已经存在,在覆盖的时候先进行询问是否要覆盖目标文件
-l 进行硬链接的链接文件创建,而不是文件本身
-p 连同文件的属性一起复制,而不是使用默认属性
-r 递归复制,用于目录的复制
-u 若目标文件比源文件旧,再进行复制
注意cp 这个命令,不同的用户操作时产生不同的结果,尤其是-a 和 -p
将 /var/log/btmp 目录复制到当前目录 . 下,通过ls进行查看,有时候会出现文件的某些属性/权限会改变,因为文件建立的时间不一样了,如果所有的属性一起复制过来,使用-a 或者 -p即可
删除文件
[root@localhost ~]#rm [-fir] 文件或者目录
参数解析:
-f force强制删除
-i 交互式删除询问是否进行删除
-r 递归删除
复制文件或者对文件改名字
[root@localhost ~]#mv [-fir] source destination
[root@localhost ~]#mv [-fir] sourc1 souce2... directory
参数解析:
-f fource,如果文件存在,会直接覆盖
-i 询问是否覆盖目标文件
-u 若目标文件存在且比source新,才会更新
-