说明:关于网络上公开Linux视频学习笔记
一、系统目录结构
Linux系统从根目录“/”出发可以找到任何文件
其中bin、sbin、lib、lib64目录软连接到/usr/bin、/usr/sbin、/usr/lib、/usr/lib64,是为了兼容CentOS6目录结构
- /bin 存放普通用户使用的命令,如/bin/ls
- /sbin 存放超级管理员使用的命令,如/sbin/useradd
- /home 普通用户家目录,默认是/home/username
- /root 超级管理员家目录,普通用户无法访问
- /usr
usr是Unix System ResourceUnix系统资源简写,在/usr目录下常用目录如下:
- /usr/local:软件安装的目录
- /usr/bin : 存放普通用户使用的命令,如/bin/ls
- /usr/sbin :存放超级管理员使用的命令,如/sbin/useradd
- /usr/lib :存放32位库文件Glibc
- /usr/lib64:存放64位库文件Glibc
- /boot 存放系统启动相关文件,如kernel(内核)、grub(引导装载程序)
- /etc
存放所有服务的配置文件,如
- /etcsysconfig/network-script/ifcfg-xxx:网络配置目录
- /etc/hostname:系统主机名配置文件
- /etc/resolv.conf:文件是DNS客户端配置文件
- /etc/hosts:本地域名解析配置文件
- /var 存放一些变化的文件,如/var/log/下的日志文件,/var/tmp/进程产生的临时文件
- /tmp 存放系统临时目录
- /dev
存放设备文件,如硬盘、磁盘分区、光驱等,如
- /dev/null:黑洞设备
- /dev/sd:硬盘,如sda、sdb等
- /dev/random:生成随机数设备
- /dev/zero:生成数据设备
- /media 存放自动挂载的硬件设备
- /mnt 存放手动挂载的硬件设备
- /proc 记录当前系统正在运行的进程实时信息,如进程信息、内存资源信息、磁盘分区信息等
- /opt 第三方工具默认安装目录
- /run 存放系统运行时需要的文件,不能随便删除
- /srv 存放本机提供的服务或数据,用户主动产生的数据,对外提供服务 */sys 存放硬件设备的驱动程序信息
二、文件路径
1、绝对路径和相对路径
绝对路径:从根目录“/”开始写的路径,比如/home/joker 相对路径:相对于当前目录来说,比如 test.txt、./test.txt、../test.txt
2、切换目录命令cd
用法: cd 绝对路径或相对路径 cd dirpath # 切换到路径dirpath cd ~ # 切换到用户家目录 cd .. # 切换到上一级目录 cd - # 切换到之前目录
3、打印工作目录pwd
pwd [ -P ] 参数P表示显示真实路径,而不是链接路径
三、文件操作
1、创建文件
touch filename... //创建空文件,可以一次创建多个空文件,若文件已存在,则修改文件时间
2、创建目录
mkdir [-mpv ] dirname -m:配置目录权限,默认权限是775 -p:递归创建目录 -v:显示详细信息
3、复制文件 cp [OPTION]... [-T] SOURCE DEST cp [OPTION]... SOURCE... DIRECTORY -a:相当于-pdr -d:若源文件是链接文件的属性,则复制链接文件属性而非文件本身 -i:若目标文件已经存在,在覆盖时会询问操作的进行 -p:连同文件的属性一同复制过去 -r:递归复制
//复制文件并重命名
//复制文件并保留文件或目录属性
//递归复制文件或目录
//复制多个文件至目录,最后一个目录是目标目录,即将前面的文件目录复制到最后的目录中
4、移动文件 mv [OPTION]... [-T] SOURCE DEST mv [OPTION]... SOURCE... DIRECTORY mv [OPTION]... -t DIRECTORY SOURCE...
//重命名文件
//移动文件到目录
//移动目录到另一个目录
//移动多个文件到一个目录
5、删除文件
rm [OPTION]... FILE... -r:递归操作 -f:强制操作 -v:详细信息 //删除目录和文件
//强制删除,慎用
四、查看文件内容
1、cat
cat [OPTION]... [FILE]... -n:显示行号 -A:显示特殊符号 -E:显示结束符
// cat -n /etc/passwd
// cat -A /etc/passwd
// cat -E /etc/passwd
// cat >> filename << EOF
2、more
使用回车键上下翻动,空格键进行翻页,q键退出,显示文件百分百 more /etc/services
3、less
使用光标上下翻动,空格键进行翻页,q键退出,不显示文件百分比 less /etc/services
4、head
从头部查看若干行,默认是10行 head -# filename // 从头部显示#行内容
5、tail
从尾部查看若干行,默认是10行 tail -# filename // 从尾部显示#行内容
tail -f filename // 查看文件尾部的变化
执行yum install git -y
6、grep
匹配/etc/passwd文件中的root相关的行 [root@localhost ~]# grep "root" /etc/passwd
匹配/etc/passwd文件中的以root开始相关的行 [root@localhost ~]# grep "^root" /etc/passwd
匹配/etc/passwd文件中的以root开始相关的行
[root@localhost ~]# grep "^root" /etc/passwd
匹配/etc/passwd文件中的以bash结尾相关的行
[root@localhost ~]# grep "bash$" /etc/passwd
匹配/etc/passwd文件中的以bash结尾相关的行,并显示行号
[root@localhost ~]# grep -n "bash$" /etc/passwd
匹配/etc/passwd文件中除了“ftp”z之外的行
grep -v "ftp" /etc/passwd
匹配多个条件
[root@localhost ~]# grep -Ei "^root|ftp" /etc/passwd
五、字符处理
1、sort
sort [OPTION]... [FILE]... -r:倒序输出 -n:按数字排序 -t:指定分隔符,默认是空格 -k:指定第几列
// 默认排序
// 按照数字排序,默认只比较第一个数字
// 按照数字大小排序
2、uniq
uniq [OPTION]... [INPUT [OUTPUT]] -c:计算重复的行 // 去除重复行
// 去除重复行,并统计每行内容重复次数
3、cut
cut OPTION... [FILE]... -d:指定分隔符 -f:数字,取第几列 -c:按字符取 // 提取用户和shell类型
4、wc
wc [OPTION]... [FILE]... -l:统计文件行数 -c:显示文件字节 -w:显示文件单词 // 统计/etc/fstab文件有多少行
六、文件属性
使用ls -l 命令查看文件属性。 [ 文件类型文件权限 ] [ 硬连接次数 ] [ 属主 ] [ 属组 ] [ 文件大小 ] [ 上一次文件修改时间 ] [ 文件名称 ] 文件类型: -:普通文件 d:目录文件 b:块设备文件,如/dev/sda1 c:字符设备,如/dev/tty1 s:套接字文件 p:管道文件 l :链接文件 文件权限: 文件权限用r,w,x分别表示读、写、执行权限。依次为属主、属组和其他用户对该文件拥有的权限。 硬链接: 文件有用户数据和元数据两部分组成。用户数据即文件数据块,是记录文件真实内容的地方,称为block。元数据即文件的附加属性,如文件大小、创建时间、所有者等信息,成为Innode。 Linux系统中引入两种连接,软链接和硬链接。软链接文件类似Windows 系统中的快捷方式,将innode指向源文件的block,访问软连接文件时,实际是访问源文件。若一个innode对应多个文件,称这些文件为硬链接。