1、常用命令
. 代表当前目录
.. 代表当前所在目录的上一级目录
table 自动补齐
# 切换目录 语法: cd 路径
# 进入/目录
[root@bogon ~]# cd /
[root@bogon /]# pwd
/
# 返回上一次所在的目录
[root@bogon /]# cd -
[root@bogon ~]# pwd
/root
# 查看当前目录下的文件
[root@bogon /]# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
# 显示当前目录下文件的详细信息
[root@bogon ~]# ls -l
total 12
-rw-------. 1 root root 1295 Oct 17 19:58 anaconda-ks.cfg
-rw-r--r--. 1 root root 404 Mar 14 14:08 ifcfg-ens33
-rw-r--r--. 1 root root 834 Mar 14 14:10 passwd
# 查看当前所在目录
[root@bogon /]# pwd
/
# 创建目录
[root@bogon /]# mkdir china
# 创建普通文件
[root@bogon /]# touch file.txt
2、绝对路径与相对路径
路径详解
所谓路径即目录组成结构
一个linux路径由"/"和目录(文件)名称两部分组成
比如:/etc/passwd
如果"/"出现在路径开头,则其表示根目录,在路径中间出现"/",其含义是某一个目录下,那么上面所示路径的意思就是"根目录下的etc目录下的passwd文件"
如果路径最后出现"/",则表示这是一个目录
3、 目录结构
# 查看当前目录下的文件
[root@bogon /]# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
# 以树的形式显示根目录下的文件
[root@bogon /]# tree -L 1 /
/
├── bin -> usr/bin
├── boot
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib64
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin -> usr/sbin
├── srv
├── sys
├── tmp
├── usr
└── var
目录介绍(了解):
/root #root用户的家目录
/home #存储普通用户家目录
lost+found 这个目录平时是空的,存储系统非正常关机而留下“无家可归”的文件
/usr #系统文件,相当于C:\Windows
/usr/local #软件默认安装的目录,相当于C:\Program
/usr/bin #普通用户使用的应用程序
/usr/sbin #管理员使用的应用程序
/usr/lib #库文件Glibc 32bit
/usr/lib64 #库文件Glibc 64bit
/boot #存放的系统启动相关的文件,例如kernel
/etc #配置文件(系统相关如网络/etc/sysconfig/network)
/tmp #临时文件(系统:程序产生的临时文件)
/opt #空目录
/media #用于挂载u盘,光驱等自动识别的设备
/srv #存放服务启动后产生的数据目录
/var #存放的是一些变化文件,比如数据库,日志,邮件....
/proc #虚拟文件系统,系统程序文件所处目录 。虚拟文件系统:只要关机就会没有。
/mnt #系统提供这个目录是让用户临时挂载其他的文件系统
4、文件拷贝
# 语法
# cp 源文件 目标位置
# 拷贝网卡配置文件到root目录
[root@bogon /]# cp /etc/sysconfig/network-scripts/ifcfg-ens33 /root/
[root@bogon ~]# ls /root/
anaconda-ks.cfg ifcfg-ens33
# 拷贝文件到当前目录
[root@bogon ~]# cp /etc/passwd .
[root@bogon ~]# ls
anaconda-ks.cfg ifcfg-ens33 passwd
# -r 递归拷贝
# 拷贝etc目录到root目录下面
[root@bogon ~]# cp -r /etc/ /root/
5、文件移动
# 语法
# mv 源文件 目标位置
# 移动/root目录下面的passwd文件至/opt目录中
[root@bogon /]# mv /root/passwd /opt
[root@bogon ~]# ls
anaconda-ks.cfg ifcfg-ens33
[root@bogon /]# ls /opt/
passwd
# 重命名
[root@bogon /]# mv /opt/passwd /opt/cloud
[root@bogon /]# ls /opt/
cloud
# 移动目录
[root@bogon /]# mv /root/etc/ /opt/
[root@bogon /]# ls /opt/
cloud etc
6、文件删除
# 语法
# rm 目标文件
# 创建文件 file.txt
[root@bogon ~]# touch file.txt
[root@bogon ~]# ls
anaconda-ks.cfg file.txt ifcfg-ens33
# 需要输入 y 进行交互确认删除文件
[root@bogon ~]# rm file.txt
rm: remove regular empty file ‘file.txt’? y
[root@bogon ~]# ls
anaconda-ks.cfg ifcfg-ens33
# -f 强制删除文件 file1.txt
[root@bogon ~]# touch file1.txt
[root@bogon ~]# ls
anaconda-ks.cfg file1.txt ifcfg-ens33
[root@bogon ~]# rm -f file1.txt
[root@bogon ~]#
# 删除目录 -r, 进行交互,需手动确定
[root@bogon ~]# mkdir dir1/dir2/dir3/ -p
[root@bogon ~]# rm -r dir1/
rm: descend into directory ‘dir1/’? y
rm: descend into directory ‘dir1/dir2’? y
rm: remove directory ‘dir1/dir2/dir3’? y
rm: remove directory ‘dir1/dir2’? y
rm: remove directory ‘dir1/’? y
# 非交互,无需手动确定 -rf
[root@bogon ~]# mkdir /dir1/dir2/dir3/ -p
[root@bogon ~]# rm -rf /dir1/