哪个命令可以显示一页内容?
more
怎样更改一个文件的权限?
chmod
对文档进行归档的命令是?
tar
压缩文件生成后缀为.gz文件的命令是?
gzip
简述shell中双引号、单引号和反引号之间的主要作用和区别?
单引号:在单引号中的所有的特殊符号都没有意义
双引号:在双引号中所有的特殊符号都没有意义,但是“$”,"`"(反引号)和“\”除外,拥有“引用变量的值’,”引用命令‘,’转义字符‘的特殊意义
反引号:在三引号括起来的都是系统命令,在bash中会先执行它
区别:单引号里面的变量不会展开,即所及即所得,双引号里的变量会展开,反引号相当于$(),详单与在一行语句中引入了一个shell命令
简述find命令和grep的区别?
find是在系统中搜索匹配的文件名,如果需要模糊查询,使用通配符搜索查询时文件名是完全匹配
grep是在文件内容中搜索符合条件的字符串,如果需要模糊查询,使用正则表达式搜索查询时字符串时包含匹配
简述在磁盘配额管理中,什么是软限制、硬限制、宽限容量以及宽限时间?
软限制:是最低容量限制,使用者超过这个容量时,必须在宽限时间内将容量降低至最低容量限制一下
硬限制:是最高容量限制,是绝对不允许超过的容量限制。
宽限时间:当使用者超过最低容量限制时,宽限时间就会生效,当使用者在宽限时间内将容量降低至在最低容量限制以下,宽限时间自动失效
宽限容量:最低容量限制和最高容量限制之间,最高容量限制,一定大于最低容量限制
请简述磁盘分区类型及作用?
主分区:分区信息存储在主引导记录扇区的分区表中,叫主分区,也叫引导分区,操作系统安装在主分区里,这样才能保证开机自动运行系统,一块硬盘至少创建一个主分区,最多4个。
扩展分区:这个分区是一个概念,实际上在硬盘上是看不到的,也无法直接使用扩展分区,除了主分区外,剩余的都是扩展分区,一块硬盘扩展分区可以创建0个或者1个。扩展分区还可再进行分割成若干个逻辑分区
逻辑分区:逻辑分区是在扩展分区上创建的,可以创建多个逻辑分区,每一个逻辑分区都可以存储一个文件系统
作用:主分区能够激活,通常用来引导系统
扩展分区:并不能直接用来存放数据
逻辑分区:通常用来存放数据
简述Linux中安装软件的3种方法?
rpm yum 源码包
rpm -ivh 全包名
yum -y install 包名
简述Linux中常见文件类型有哪些?,用什么字符表示?(至少4个)
目录文件:用d表示
管道文件:用p表示
链接文件:用l表示
普通文件:用-表示
设备文件:字符设备文件:用c表示,块设备文件:用b表示
简述Linux系统默认的目录结构,并分别简述其主要功能(至少4个)
/home:用来存放普通用户的主目录
/root:用来存放超级用户root的主目录
/mnt:用来存放临时挂载的目录
/lid:用来存放共享库
/dev:存放设备文件
/etc:用来存放系统管理和配置文件
Linux是一款操作系统、免费、开源、安全、搞笑、稳定、处理高并发非常强悍。现在很多企业级的项目都部署到linux/unix服务器上运行
linux 因其创始人Linux Torvalds 而得名(Linux的发音),是芬兰人
Linux的主要发行版本有:RedHat、ubautu、红旗Linux、Debian、suse、slackware
1、免费的专业级操作系统
2、良好的可移植性
3、低成本
4、良好的用户界面
5、内核的定制和剪裁
6、广泛的协议支持
7、丰富的应用程序和开发工具支持
8、良好的安全性和稳定性
个人桌面领域如:Ubuntu;
服务器应用领域;
嵌入式应用领域,运行稳定、低成本、对网络的良好如:机顶盒、数字电视、网络电话、手机
Linux是免费的,而Windows是收费的
Linux的安全性相比Windows,安全性更高
Linux是开源的,Windows是封闭的,Linux定制性十分强
Linux的操作相比Windows更为复杂,学习成本更高
Windows多应用在个人桌面领域,而Linux多用在服务器领域
1、桥连接:Linux可以和其他的系统通信,但可能会造成IP冲突
2、NAT地址转换方式:Linux可以访问地址,不会造成IP冲突
3、主机模式:Linux主机是一个独立的主机,不能访问外网
根分区就是root分区,这是Linux平台的系统的一种称谓
当系统内存不够用时,可以用swap暂代内存,一般来说是分配物理内存的两倍
Linux在启动的时候,需要引导一些文件,这些文件被存放在boot分区
Linux系统是一个多用户任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统
Linux的用户需要至少属于一个组
添加用户:
语法:useradd 用户名
useradd 用户名
useradd -d 指定目录 新的用户名
语法:passwd 用户名
注销用户:logout
在删除用户时,一般不会将家目录删除
语法:userdel 用户名
删除用户xm,但是保留家目录
userdel xm
删除用户xl以及用户主目录
userdel -r xl
查询用户信息:
语法: id 用户名
[root@laijinhui ~]# id xiaohong
uid=505(xiaohong) gid=505(xiaohong) 组=505(xiaohong)
uid:用户id号
gid:所在组id号
组:即所在的组名
当用户不存在时,返回无此用户
在Linux中,如果当前用户的权限不够,可以通过
su - root
切换到最高用户权限
类似于角色,系统可以对有共性的多个用户进行统一的管理
语法:groupadd 组名
[root@laijinhui ~]# groupadd xiaohongzu
语法:groupdel 组名
组必须先创建好的,否则无效
语法:useradd -g 组名 用户名
usermod -g 组名 用户名
/etc/passwd
用户的配置文件,记录用户各种信息
xiao:x:507:506::/home/xiao:/bin/bash
每行的含义:
用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录sell
/etc/shadow
口令的配置文件
xiaohong2:!!:18635:0:99999:7:::
每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效事件标志
/etc/group
组的配置文件
xiaohong2:x:506:
每行的含义:组名:口令:组标识号:组内用户列表
在Linux中,一切皆文件,任何软件和I/O涉笔都被是为文件,Linux中文件名最大支持256个字符,可以使用A-Z,a-z,0-9等字读来命名,与Windows不用,Linux中文件名是区分大小写的
Linux系统中的文件是否能被执行,与扩展名没有关系,主要看文件的属性
普通文件:最常用的一类文件,用来存放数据、程序等信息的文件,如图形文件、声音文件、文档文件等
**管道文件:**用于进程间传递数据的文件,主要作用是将前一个命令的标准输出后作为后一个命令的标准输入,通常管道建立在调整缓存中。管道分为无名管道和有名管道。管道符”|“
**链接文件:**指向一个真实存在的文件,为解决文件的共享使用引入链接机制,顺带带来了隐藏文件路径、即节省存储等好处。链接文件分为硬链接和软连接
设备文件:Linux将所有的外设看作是一种特殊的文件,用户通过文件访问设备,简化用户操作,根据访问数据方式的不同有分为块设备文件和字符设备文件
目录文件:Linux内核组织文件系统的基本节点,存放文件名及其相关的信息的文件,包含下一级目录或普通文件
普通文件
使用 ls -l 命令后,第一列第一个字符为“-”的文件为普通文件,如图所示,普通文件一般为灰色字体,绿色字体的是可执行文件,红色字体的是压缩文件。
目录文件
目录文件的字体颜色是蓝色,使用 ls -l 命令查看,第一个字符为"d"(directory)
设备文件
Linux 中的硬件设备如硬盘、鼠标等也都被表示为文件,即为设备文件。设备文件 一般存放在 /dev/ 目录下,文件名为黄色
块设备文件:块设备文件支持以块(block)为单位的访问方式。在 EXT4 文件系统中,一个 block 通常为 4KB 的大小,也就是说每次可以存取 4096(或其整数倍) 个字节的数据。应用程序可以随机访问块设备文件的数据,程序可以自行确定数据的位置,硬盘、软盘等都是块设备。使用 ls -l 命令查看,块设备文件的第一个字符是 "b"(block)
字符设备文件:字符设备文件以字节流的方式进行访问,由字符设备驱动程序来实现这种特性,这通常要用到 open、close、read、write 等系统调用。字符终端、串口和键盘等就是字符设备。另外,由于字符设备文件是以文件流的方式进行访问的,因此可以顺序读取,但通常不支持随机存取。使用 ls -l 命令查看,字符设备文件的第一个字符是 "c"(char)
链接文件
使用 ls -l 命令查看,第一个符号为 “l”,文件名为浅蓝色。
软链接:软链接(又称符号链接),使用 ln -s file file_softlink 命令可以创建一个文件的软链接文件,软链接相当于给原文件创建了一个快捷方式,如果删除原文件,则对应的软链接文件也会消失。
硬链接:硬链接,相当于给原文件取了个别名,其实两者是同一个文件,删除二者中任何一个,另一个不会消失;对其中任何一个进行更改,另一个的内容也会随之改变,因为这两个本质上是同一个文件,只是名字不同。使用 ls -i 命令查看,可以发现硬链接的两个文件的 inode 号是一样的。
管道文件
管道文件主要用于进程间通信,使用 ls -l 命令查看,第一个字符为 "p"(pipe)。可以使用 mkfifo 命令来创建一个管道文件:mkfifo fifo_file
每个inode都有一个号码,操作系统用inode号码来识别不同的文件。
Unix/Linux系统内部不使用文件名,而使用inode号码来识别文件。对于系统来说,文件名只是inode号码便于识别的别称或者绰号。
表面上,用户通过文件名,打开文件。实际上,系统内部这个过程分成三步:
首先,系统找到这个文件名对应的inode号码;
其次,通过inode号码,获取inode信息;
最后,根据inode信息,找到文件数据所在的block,读出数据。
使用ls -i命令,可以看到文件名对应的inode号码
Linux下没有盘符的概念,只有目录,不同的硬盘分区是被挂载在不同目录下的
所谓文件目录就是将所有的文件的说明信息采用属性结构组织起来,整个文件系统由一个‘根’(root),然后根上分枝,也可长出叶子,根和枝成为目录或者文件夹,叶子成为文件,此结构的文件系统效率高,现代操作系统基本采用这种结构
目录也是一种文件,系统在创建每一个目录时,会自动为它设定两个目录文件,一个是“.”代表该目录自己,一个则是“…”代表该目录的父目录。对于根目录来说,
’.‘,‘..’都是它本身
目录 | 作用 |
---|---|
/ | 根目录,所有目录的起点 |
/boot | 用来存放内核镜像文件和与启动有关的文件 |
/tmp | 各种临时文件的目录 |
/dev | 存放设备文件 |
/mnt | 系统提供的用户临时挂载其他文件系统的目录 |
/home | 存放普通用户的主目录 |
/lib | 存放共享的库文件 |
/opt | 存放附加软件包 |
/etc | 存放系统管理和配置文件 |
/usr | 存放用户直接有关的文件和目录 |
/bin | 存放系统中最基本的管理命令,普通用户可执行 |
/var | 存储需要随时改变的文件,如系统日志文件等 |
/sbin | 存放系统管理命令,系统管理员可以执行,普通用户无权限执行 |
/root | 超级用户root的主目录 |
/proc | 虚拟目录,存放运行时系统的状态文件,如内存使用情况等 |
相对路径:以当前目录为起点,到达目标的路径,受当前所在目录限制
绝对路径:以‘/’开头,递归没机目录直到目标的路径,不受当前所在目录限制
1、pwd:显示当前工作目录的路径
2、cd:用于改变当前工作目录
3、ls:l列出目录内容
ls [选项] [文件/目录]
选项 | 描述 |
---|---|
-a | 显示目录下所有文件信息,包含以 . 开头的隐含文件 |
-A | 显示目录下的所有文件信息,包含以 . 开头的隐含文件,但不列出 . 和… |
-d | 显示目录本身的信息,而非目录下的文件信息 |
-l | 长格式显示详细信息,该选项最常用 |
-h | 人性化显示容量信息 |
-t | 以修改时间排序,默认按文件名称排序 |
-c | 显示文件或目录属性最后修改时间 |
-u | 显示文件或目录最后被访问的时间 |
4、mkdir:创建目录
创建多级目录
mkdir -p /home/123/456
创建123目录,并在该目录下再创建456目录
5、touch:创建文件
touch 文件名
创建多个文件
touch 文件1 文件2
##
6、cp:将源文件或目标赋值到目标文件或者目录中
cp [选项] 源文件/目录 目标文件/目录
选项 | 描述 |
---|---|
-a | 递归地将源文件或者目录中的内容都赋值到目标目录,并保留文件属性及链接不变 |
-d | 复制时保留文件链接 |
-f | 强制赋值,在覆盖已经存在的目标文件时,不给出提示(系统默认设置) |
-i | 交互式赋值,在覆盖目标文件 |
-p | 出府治源文件内容外,好复制修改时间和访问权限 |
-r | 若源文件是个目录,则递归将其目录中的文件赋值到目标目录,此时目标必须是个目录 |
7、rm:删除一个目录中的一个或者多个文件
rm[选项] 文件/目录
选项 | miaosh |
---|---|
-r | 递归的删除整个目录 |
-f | 强制删除,不给出任何提示 |
-i | 进行交互式删除,删除时提示用户输入y确认 |
8、mv:用于将文件或者目录改名或将文件由一个目录移到另一个目录中
mv [选项] 源文件/目录 目标文件/目录
选项 | 描述 |
---|---|
-i | 交互式操作,若目标文件或目录由与原文件或者目录同名的,则要求确认 |
-f | 强制操作,若目标文件或目录与源文件或目录同名,则直接覆盖现有文件或目录 |
9、cat:用来显示文件内容,以只读的方式打开
cat [选项] 文件名
选项 | 描述 |
---|---|
-b | 显示行号,空白行不显示行号 |
-n | 显示行号,包括空白行 |
10、more:分页查看文件,一次值显示一屏文本,按回车或空格键翻下一页
选项 | 描述 |
---|---|
-c | 显示下一屏之前先清屏 |
-d | 每屏底部显示”–more–(xx%)"等友好提示信息 |
-s | 文件中连续空白行压缩成一个空白行显示 |
11、less:分页查看文件内容,功能同more类似,
不同的是less允许用户往前或者往后翻页,more只能往后翻
12、>指令和>>指令介绍:
>输出重定向:会将原来的文件内容覆盖
>>追加:不会覆盖原来文件的内容,而是追加到文件尾部
13、head:显示文件或者标准输入的头几行内容
head [选项] 文件名
选项 | 描述 |
---|---|
-c nk | 显示文件前nkb的内容 |
-n | 显示文件前n行的内容,默认为10 |
14、tail:与head命令功能相反,查看文件结尾
tail [选项] 文件名
选项 | 描述 |
---|---|
-c nk | 显示末尾nkb的内容 |
-n | 从距离文件尾n行处开始显示,默认为10 |
+n | 从第n行以后开始显示 |
-f | 动态显示文件内容,按ctrl+c组合键退出 |
15、echo:输出内容到控制台
echo [选项] [输出内容]
16、ln:创建链接文件
ln [选项] 源文件或目录 链接名或目录
选项 | 描述 |
---|---|
-s | 建立符号链接(软连接) |
-f | 强行建立文件或目录的链接,不论文件或目录是否存在 |
-i | 交互式地建立文件或目录的链接,覆盖已有文件之前询问用户 |
17、history:查看历史命令
history -w 路径:可以将历史记录保存到文件里
18、date:显示当前日期
19、cal:查看日历指令
find命令是在系统当中搜索符合条件的文件名,如果需要模糊査询,使用通配符进行匹配,搜索时文件名是完全匹配
grep命令是在文件当中搜索符合条件的字符串,如果需要模糊査询,使用正则表达式进行匹配搜索时字符串是包含匹配
find:在指定的目录开始,递归地搜索其各个子目录,查找到满足条件的文件并对峙采取相关的操作,此命令提供相对多的查找条件,功能非常强大
命令格式:find [路径] [选项]
选项 | 描述 |
---|---|
-name | 查找文件名匹配所给字符串的所有文件,字串内可使用通配符 |
-type | 按文件 类型查找,文件(f),目录(d),设备(b,c),链接(l)等 |
-user | 按文件属主查询 |
-exec | 对找到的文件执行命令,后接Linux命令 |
-a | 逻辑与 |
-o | 逻辑或 |
! | 逻辑非 |
grep:以指定的查找模式搜索查找文件内容
grep指令和管道符号’|‘
grep过滤查找,管道符’|‘,表示将前一个命令的处理结果输出传递给后面的命令处理
格式:grep [选项] 匹配模式 文件名
20、手册文档:man
man [选项] 命令名
21、帮助信息help
命令名 -help(查询命令帮助信息)
22、清屏:
clear:clear命令将会刷新屏幕,本质上只是让终端显示页向后翻了一页,如果向上滚动屏幕还可以看到之前的操作信息。一般清屏常用这个命令。
reset:这个命令将完全刷新终端屏幕,之前的终端输入操作信息将都会被清空,但整个命令过程速度有点慢,使用较少
读:r 4
写: w 2
执行: x 1
chmod [选项] [模式] [参考文件=文件名]
u:所有者 g:所有组 o:其他人 a:所有人(u、g、o的总和)
eg:给abc文件的所有者读写执行的权限,给所在组读执行权限,给其它组读执行权限
chmod u=rwx,g+r,o+rx abc
给abc文件的所有者除去执行的权限,增加组写的权限
chmod u-x,g+w abc
给abc文件的所有用户添加读的权限cho
chmod a+r abc
修改权限第二种方式:通过数字变更权限
规则:r=4,w=2,x=1 ,rwx=4+2+1=7
将/ home/abc.txt文件的权限修改成 rwxr-xr-x,使用给数字的方式实现:
例: rwx=4+2+1=7
chmod 755 /home/ abc. txt
chown [选项] 用户名 文件或目录
1、chown newowner file 改变文件的所有者
2、chown newowner:newgroup file 改变用户的所有者和所有组
chgrp newgroup file
gzip [选项] 文件(压缩文件,只能将文件压缩成*.gz文件)
gunzip [选项] 文件(解压缩命令)
注意:使用gzip对文件进行压缩后,不会保留原来的文件
zip [选项] XXX.zip 将要压缩的内容
unzip [选项] XXX.ZIP
-r:递归压缩,即压缩目录
-d<目录>: 指定解压后文件的存放目录
文件归档,非压缩命令,通常保存文件先用tar将目录达成tar归档文件,再用gzip或bzip2压缩,最后打包后的文件是tar.gz结尾的文件
语法:tar [选项] XXX.tar.gz 打包的内容
功能描述:打包目录,压缩后的文件格式 tar.gz
选项 | 描述 |
---|---|
-c | 建立新的打包文件 |
-t | 显示打包文件中的文件列表 |
-x | 从打包文件中解压此文件 |
-f<包文件名> | 定义打包的文件名 |
-z | 通过gzip来打包文件,与-x联用时调用gzip完成解压缩 |
-v | 显示命令的执行过程 |
压缩:tar zcvf XXX.tar.gz 文件
解压缩:tar zxvf 压缩文件 -C /
指定目录
主分区:
逻辑分区:
扩展分区:
lsblk查看系统分区情况:
lsblk -f
1、mount:
用于挂载指定的文件系统
mount [选项] [设备名] [挂载点]
-t:指定设备的文件系统类型
-a:安装在/etc/fstab文件中列出的所有文件系统
-w:将文件系统安装为科协,为命令默认情况
-r:将文件系统安装为只读
2、umount:
用于卸载已经挂载的文件系统,但不能卸载根分区
umount /dev/设备名
umount -v /dev/sda1 通过设备名卸载(显示版本信息)
umount -v /mnt/mymount/ 通过挂载点卸载
umount -vl /mnt/mymount/ 延迟卸载
3、fdisk:强大的磁盘分区工具
fdisk -l :列出所有的分区,包括没有挂上的分区和usb设备
fdisk -l /dev/hds1:查看单个硬盘情况
fdisk 设备: fdisk命令操作磁盘
4、mkfs:分区格式化
mkfs [v] [-t fstype] [fs-options] filesys [blocks] (设备)
-t:定义创建的文件系统类型,默认为ext2
-c: 在创建文件系统前检查设备坏块
eg:
mkfs -t ext3 /dev/sdb1 将sdb1分区格式化成ext3文件系统
1、虚拟机添加硬盘
2、分区(新建磁盘分区)
1、fdisk -l 查看磁盘分区
2、fdisk /dev/sdb 对sdb磁盘进行分区
3、输入n ,选择P(e是扩展分区,l是逻辑分区)
4、选择1(分区选为1,最多创建4个主分区),输入1,+500M(定义分区数量)
5、w保存
3、文件系统格式化ext3
mkfs -t ext3 /dev/sdb1
4、创建/home/newdisk目录
5、挂载:mount /dev/sdb1 /home/newdisk
6、设置可以自动挂载
vim /dev/sdb1
配置为:/dev/sdb1 /home/newdisk ext3 0 0
7、即刻生效: mount -a
8、卸载
umount /dev/sdb1或umount /home/newdisk
1、登录虚拟机成功后 vim /etc/fstab 回车,删除对应所属硬盘的uuid(dd删除),然后保存并退出(wq)
2、df -h 查看所有磁盘信息,找到需要删除的磁盘
卸载掉挂载的磁盘umount /目录 umount /dev/sdb1
使用 命令 df -h 查看磁盘,没有了那三个磁盘说明操作成功
3、使用 fdisk /dev/sdc 回车进入,输入d(删除分区),输入具体分区 1,然后保存退出 (W)
4、退出后使用 lsblk -f 查看,如果只看到sdc没有分区说明操作成功
5、删除掉sdc:虚拟机–》设置–》删除对应硬盘
在 Linux系统中,由于是多人多任务的环境,所以会有多人其同使用一个硬盘空间的情况,如果其中少数个人大量的占用了硬盘空间的话,那势必压缩其它使用者的使用空间,因此管理员应该适当的开放硬盘的权限给使用者,以妥善的分配系统资源
**soft:软限制:**也称最低容量限制,使用者在宽限时间内可以超过最低容量限制但必须在宽限时间内降低在最低限制之下
**hard:硬限制:**也称最高容量限制,是绝对不能超过的容量,最高容量限制要比最低容量要高
宽限容量:soft到hard之间的容量
宽限时间:当使用者的空间超过了最低容量限制却还没有到达最高容量限制时,而当使用者的磁盘容量使用情况超过软限制时,宽限时间就会自动被启动,而在使用者将容量降低到软限制之下,宽限时间就会自动的取消
quota [uvsl] [username]
quota [gvsl] [groupname]
-v:显示每个文件系统的磁盘配额值
启动磁盘配额:quota -avug 挂载点
磁盘配额实例:
1、建立用户qtest1和qtest2来进行磁盘配额,且这两个使用者都是qgroup群组里面的用户。
2、每个使用者硬限制为50kB,软限制为45kB ,inode的软限制为4个节点,硬限制为6个节点
3、用户和群组的宽限时间设定为1天
4、qgroup群组的最低限额设定为80kB,最大限额设定为90kB,节点的最低限额为7个,最高限额设定为11个
1)建立测试用的用户和群组
groupadd qgroup
useradd -g qgroup qtest1
useradd -g qgroup qtest2
passwd qtest1
passwd qtest2
2)建立文件系统的磁盘配额支持,新建一个分区,修改/etc/fstab,重新remount文件系统来驱动设定值
defaults,usrquota,grpquota
mount -o remount /home/newdisksdc1/
3)扫描磁盘的使用者使用情况,并产生重要的aquota.group与aquota.user
quotacheck –avgu
cd /home/newdisksdb1
setenforce 0
4)启动quota的限额
quotaon –avug
5.编辑使用者的可使用空间
edquota -u qtest1
edquota -p qtest1 -u qtest2
Edquota -t
6.编辑群组可使用的空间
edquota -g qgroup
edquota -t
7.利用 repquota显示更完整的 quota结果报告
requota -avug
8.设定开机时启动 quota, /etc/rc.d/rc.local
vim /etc/rc.d/rc.local
9、测试
软件包分为源码包和二进制包
源码包优点:
◆ 开源,如果有足够的能力,可以修改源代码
◆ 可以自由选择所需的功能
◆ 软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高
◆ 卸载方便
二进制包又分为:DPKG包和rpm包
rpm -ivh 包全名
升级:
rpm -Uvh 包全名:升级安装,如果没有安装过,系统直接安装
rpm -Fvh:升级安装,如果没有安装过,不会安装
rpm -e 包全名
查询系统已安装的所有软件包列表:
eg:rpm -qa|grep httpd
查询未安装软件包
rpm -qip 包全名
yum -y install 包名
yum包升级
yum -y update 包名
yum包卸载:yum remove 包名
1、下载源码安装包(官网)
2、解压缩(tar)
3、进入解压目录
4、编译前准备.config
5、编译:make
6、清空编译内容
7、编译安装 make install
卸载:源码根目录下执行;make uninstall
命令模式:通过快捷键进行操作,用来取消我们鼠标的操作
插入模式:用于文本编辑
编辑模式(末行模式)
:w #保存不退出
:w 新文件名 #把文件另存为新文件
:q #不保存退出
:wq #保存退出
:! #强制
:q! #强制不保存退出,用于修改文件之后,不保存数据退出
:wq! #强制保存退出,当文件的所有者或者root用户,对文件没有写权限的时候,强制写入数据使用
第八章;shell编程
什么使shell?
shell使命令语言解释器,使用户和Linux内核之间的接口程序
echo
1)基本格式:echo【选项】【输出内容】
2)选项
-e 支持反斜线控制的字符转换
-n 取消输出后行末的换行符号(就是内容输出后不换行)
3)例子
echo “hanqr!” #echo的内容就会打印到屏幕
echo -n ''hello world" # 输出后不换行
4)在echo命令中如果使用了“-e”选项,则可以支持控制字符。
1、赋予执行权限,直接运行
chmod 755 hello.sh
/root/sh/hello.sh 使用绝对路径运行
./hello.sh
2、通过bash调用执行脚本
bash hello.sh
定义命令别名
基本格式:alias 别名=原命令
取消别名:unalias 别名
WC [选项] [文件名]
-c 统计字节数
-w:统计单词书
-l:统计行数
管道符:’|‘:表示将前一个命令的处理结果传递给后面的命令处理
变量的查看:(set)
环境变量的设置:export HANQR=22
env:在终端中查看环境变量
删除环境变量:unset 变量名
echo $PATH
位置参数变量
位置参数变量 | 作用 |
---|---|
$n | n为数字,$0代表命令本身,$1-$9代表第1到第9个参数,10以上的参数需要花括号包含,eg:{10} |
$* | 这个变量代表命令行中的所有参数,$*把所有的参数看成一个整体 |
$@ | 这个变量代表哦命令行中的所有参数,不过会把参数区别对待 |
$# | 这个变量代表所有命令行中所有参数的个数 |
if语句:
if [ 条件表达式 ]
then 命令1
fi
if[ 条件表达式 ];then
命令1
fi
单分支条件语句需要注意:
♦ if语句使用fi结尾,和一般语言使用大括号结尾不同
♦ [条件判断式] 就是使用test命令判断,所以中括号和条件判断式之间必须有空格
♦ then后面跟符合条件之后执行的程序,可以放在[ ]之后,用“;”分割。也可以换行写入,就不需要“;”了