Linux系统的目录结构
Windows:以多根的方式组织文件(目录树) 例:C:\ D:\ E:\
Linux:以单根的方式组织文件 例:/
1.存放命令相关的目录
/bin:普通用户使用的二进制命令 例:/bin/ls /bin/date
/sbin:超级管理员使用的二进制命令(大部分) 例:/sbin/service
2.存放用户相关数据的家目录
/home:普通用户的家目录,默认为/home/username(家目录里面的环境不能乱删.bash_logout等)
/root:超级管理员的家目录,普通用户无权操作(家目录里面的环境不能乱删.bash_logout等)
3.系统文件目录
/usr:存放系统相关软件的目录,相当于C:\Windows
/usr/local:软件安装的目录,相当于C:\Program File
/usr/bin:普通用户使用的应用程序(重要)
/usr/sbin:管理员使用的应用程序(重要)
/usr/lib:库文件Glibc 32bit,命令所依赖的库文件
/usr/lib64:库文件Glibc 64bit,命令所依赖的库文件
4.启动目录
/boot:存放系统启动相关的文件,例如:kernel,grub(引导装载程序)
5.配置文件目录
/etc:存放配置文件的目录
/etc/sysconfig/network-scripts/ifcfg-:网卡配置文件
/etc/hostname:配置系统主机名的文件
/etc/resolv.conf(configure):DNS客户端配置文件
/etc/hosts:本地域名解析配置文件
6.可变的目录与临时目录
/var:存放一些变化的文件,例:/var/log/下的日志文件
/var/tmp:存放进程产生的临时文件的目录
/tmp:系统临时文件目录(像公共厕所)
7.设备目录文件
/dev:存放设备文件,比如硬盘、硬盘分区、光驱等等
/dev/sd:sda sdb sdd Linux的磁盘分区
/dev/null:黑洞设备,只进不出
/dev/random:生成随机数的设备
/dev/zero:能源源不断的产生数据
8.虚拟的文件系统
/proc:反应当前系统正在运行进程的实时状态(跟/sys一样)
9.不常用的目录
/media:提供设备挂载点的目录
/mnt:临时挂载点(mount)
/opt:有些软件包也会安装在这里,也就是自定义的软件包
/run:存放正在运行进程相关信息的文件的目录
/srv:存放正在运行进程相关信息的文件的目录
ll -h:以长格式的形式显示目录下的内容(长格式中的MB单位变为GB单位)
什么是文件、绝对路径和相对路径?
文件定义:整个文件中包含文件名称以及文件所在的位置,我们将这个叫做路径,也就是说我们是通过路径对文件进行定位。
绝对路径:从根开始的完整的路径,从当前目录或指定的目录开始的
相对路径:相对于自己所在位置到目标位置的路径
绝对路径举例:[root@oldboy /opt]# ls /boot
相对路径举例:[root@oldboy /opt]#ls ../boot/
. 代表当前目录
.. 代表当前目录的上一级目录
pwd:显示位置所在的目录
#绝对路径 ~ 当前用户的家目录 root = /root oldboy = /home/oldboy
[root@bgx /]# ls /home/alice/file1
[root@bgx /]# ls ~/file2 #/root/file2
[root@bgx /]# ls ~/alice/file3 #/root/alice/file3
#相对路径
[root@bgx /]# mkdir abc #创建一个abc目录 /abc目录
[root@bgx /]# ls ../file3 #查看上一级目录的file3文件 [检查当前所在的位置]
[root@bgx /]# ls file4 #查看当前目录file4文件
[root@bgx /]# ls abc/file5 #查看当前目录下的abc目录下的file5文件
目录切换命令:
cd:切换目录(change directory)
cd -:切换回上一次所在的目录
cd .:显示当前所在的目录
cd ..:返回上级目录
cd/cd ~:切换回当前用户所在的家目录 ~:代表家目录
文件管理的基本命令:
(1)mkdir:创建目录
[root@oldboyedu ~]# mkdir oldboy1
mkdir -p:递归创建
[root@oldboyedu ~]# mkdir -pv oldboy1/oldboy2/oldboy3/ #p递归v显示目录的创建过程
①创建1---100个目录
[root@oldboyedu ~]#mkdir {1..100}
②创建oldboy-1到oldboy-100个目录
[root@oldboyedu ~]#mkdir oldboy-{1..100}
③(了解)
[root@oldboyedu ~]# mkdir /opt/{bin,logs,conf}/test -pv
#创建/opt/bin/test.txt /opt/logs/test.txt /opt/conf/test.txt
(2)touch:创建文件
[root@oldboyedu ~]#touch wzh.txt
①创建连续的文件
[root@oldboyedu ~]#touch {1..100}.txt /opt
②在目录下创建文件
[root@oldboy ~]# touch /opt/wzh.txt
(3)cp:复制文件 (copy)
①复制文件到目录
[root@oldboy /opt]# cp wzh.txt /etc/wzh/
②递归复制目录和文件
[root@oldboy ~]# cp -r oldboy/ job/
cp: overwrite ‘job/oldboy/oldboy1’? y
cp: overwrite ‘job/oldboy/oldboy2’? ^C
[root@oldboy ~]# \cp -r oldboy/ job #\表示强制跟-f用法一样
(4)mv:移动文件或目录,相当于剪切 (move)
①移动文件到目录
[root@oldboy ~]# mv /opt/wzh.txt /etc/ #将wzh.txt移动到etc目录中
②移动文件到另一个文件(将会被另一个文件覆盖)
[root@oldboy /opt]# mv wzh /etc/old #将当前目录下的wzh文件移动到/etc/下并修改名称为old
[root@oldboy ~]# mv wzh old #将wzh文件名称修改为old
③将多个文件和目录移到到指定的位置
[root@oldboy ~]# mv old{1..5} wzh /opt/ #将多个文件和目录移到到指定的位置
[root@oldboy ~]# ls /opt/
old1 old2 old3 old4 old5 wzh
(5)rm:删除文件或者目录
PS: 在使用rm删除时, 文件用-f 目录才加-r 尽可能不要-rf一起使用
rm -f:强制删除(不推荐)
[root@oldboy /opt]# rm -f old1
rm -r:递归删除,删除目录和文件
[root@oldboy /opt]# rm -r wzh/
rm: remove directory ‘wzh/’? y