- 环境变量
命令在Linux中的执行分为4个步骤:
1、以路径的形式来执行
2、命令的别名形式来执行,alias 新命令=“原始命令”,新命令与原始命令互不冲突,可以同时使用,重启失效,修改/etc/profile 写入文件永久生效
3、Bash解释器的内部命令
这三种占平时执行命令的2%或不到
4、进行多路径的查找命令并执行,PATH 用于定义查找命令所对应的路径,
常用占98%
PATH变量
变量名称=值
export 变量命令 → 全局变量(也就是一般变量转换成全局变量)
通配符 [ ]如果没有被通配上它不会显示
{ }如果没有被通配上就会报错
如:ls /dev/sda[1,3,5]
ls /dev/sda{1,3,5} 可以试验试试
- vim、shell命令脚本、YUM、网卡、if条件测试语句、黑洞文件
vim编辑器三种模式:
(1)命令模式
(2)输入模式(编辑模式)
(3)末行模式,或冒号模式,或两点模式
(1)
/内容,搜索
dd 删除(剪切)
100dd 删除光标开始处的100行
yy 复制
p 粘贴
(2)
可以类似记事本编辑
(3)
:q!
:wq!
:set nu
:set nonu
vim /etc/hostname 修改主机名
hostname 查看主机名
vim /etc/sysconfig/network-scripts/ifcfg-eno16777736 修改网卡配置信息
TYPE=Ethernet
BOOTPROTO=static
NAME=eno16777736
ONBOOT=yes
IPADDR=192.168.10.10
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
DNS1=192.168.10.1
systemctl restart network 重启网卡
配置YUM软件仓卡
第1步:进入到/etc/yum.repos.d/目录中(因为该目录存放着Yum软件仓库的配置文件)。
第2步:使用Vim编辑器创建一个名为rhel7.repo的新配置文件(文件名称可随意,但后缀必须为.repo),逐项写入下面加粗的配置参数并保存退出(不要写后面的中文注释)。
[rhel-media] :Yum软件仓库唯一标识符,避免与其他仓库冲突。
name=linuxprobe:Yum软件仓库的名称描述,易于识别仓库用处。
baseurl=file:///media/cdrom:提供的方式包括FTP(ftp://..)、HTTP(http://..)、本地(file:///..)。
enabled=1:设置此源是否可用;1为可用,0为禁用。
gpgcheck=1:设置此源是否校验文件;1为校验,0为不校验。
gpgkey=file:///media/cdrom/RPM-GPG-KEY-redhat-release:若上面参数开启校验,那么请指定公钥文件地址。
第3步:按配置参数的路径挂载光盘,并把光盘挂载信息写入到/etc/fstab文件中。
第4步:使用“yum install httpd -y”命令检查Yum软件仓库是否已经可用。
进入/etc/yum.repos.d目录中后创建Yum配置文件:
[root@linuxprobe ~]# cd /etc/yum.repos.d/
[root@linuxprobe yum.repos.d]# vim rhel7.repo
[rhel7]
name=rhel7
baseurl=file:///media/cdrom
enabled=1
gpgcheck=0
[root@linuxprobe yum.repos.d]# mkdir -p /media/cdrom
[root@linuxprobe yum.repos.d]# mount /dev/cdrom /media/cdrom
mount: /dev/sr0 is write-protected, mounting read-only
[root@linuxprobe yum.repos.d]# vim /etc/fstab
/dev/cdrom /media/cdrom iso9660 defaults 0 0
shell脚本
交互式(Interactive):用户每输入一条命令就立即执行。
批处理(Batch):由用户事先编写好一个完整的Shell脚本,Shell会一次性执行脚本中诸多的命令。
脚本中的三种不同的元素
1、脚本声明 #!
2、脚本注释 #
3、脚本命令
执行:
bash 脚本名.sh
./脚本名.sh
例如:[root@linuxprobe ~]# vim example.sh
#!/bin/bash ##声明
#For Example BY linuxprobe.com ##注释
pwd ##命令开始
ls -al
bash example.sh
或者
./example.sh
例如:
[root@linuxprobe ~]# vim example.sh
#!/bin/bash
echo "当前脚本名称为$0"
echo "总共有$#个参数,分别是$*。"
echo "第1个参数为$1,第5个为$5。"
[root@linuxprobe ~]# sh example.sh one two three four five six
当前脚本名称为example.sh
总共有6个参数,分别是one two three four five six。
第1个参数为one,第5个为five。
1、测试语句 && 命令 前面成功就执行后面 与
2、测试语句 || 命令 前面失败就执行后面 或
3、! 判断结果取相反的值 非
0 正确,是
1 错误,否
例如:
[root@linuxprobe ~]# free -m
total used free shared buffers cached
Mem: 1826 1244 582 9 1 413
-/+ buffers/cache: 830 996
Swap: 2047 0 2047
[root@linuxprobe ~]# free -m | grep Mem:
Mem: 1826 1244 582 9
[root@linuxprobe ~]# free -m | grep Mem: | awk '{print $4}'
582
[root@linuxprobe ~]# FreeMem=`free -m | grep Mem: | awk '{print $4}'`
[root@linuxprobe ~]# echo $FreeMem
582
[ `free -m | grep Mem: | awk '{print $4}'` -lt 1024 ] && echo "Insufficient Memory"
[ `free -m | grep Mem: | awk '{print $4}'` -lt 1024 ] && mail -s memory root@linuxprobe.com