Linux运维初级教程(一)Shell脚本
序,掌握shell脚本是linux运维工程师的最基础技能。
一、脚本语言
与高级语言不通,脚本语言运行时需要调用相应的解释器来翻译脚本中的内容。
常见的脚本语言有Shell脚本、Python脚本、php脚本、Perl脚本等。
二、Shell脚本格式范例
第一行#!的作用是指定该脚本程序的命令解释器
#!/bin/bash
#
# echo "Hello the world"
exit 0
三、运行脚本的方式
1 赋予权限,直接运行脚本
chmod a+x print.sh
/root/print.sh #通过绝对路径执行脚本
./print.sh #通过相对路径执行脚本
2 没有权限,通过bash或sh运行脚本
bash print.sh #调用bash程序解释器脚本内容执行
sh print.sh #调用sh程序解释脚本内容并执行
3 没有权限,通过.或source运行脚本
source print.sh #
. print.sh #
四、Shell语法之判断语句
1 if语句
|
if条件 then 命令序列 fi |
if条件 then 命令序列 else 命令序列 fi |
if条件 then 命令序列 elif条件 then 命令序列 elif条件 then 命令序列 else 命令序列 fi |
2 case语句
|
case $变量名称 in 模式1) 命令序列 ;; 模式2) 命令序列 ;; 模式N) 命令序列 ;; *) esac |
case $变量名称 in 模式1|模式2) 命令序列 ;; 模式3|模式4) 命令序列 ;; 模式5|模式6) 命令序列 ;; *) esac |
五、Shell语法之循环语句
1 for语法
| 语法格式1 | 语法格式2 |
|
for 变量 in 值1 值2 ... 值N do 命令序列 done |
for((初始化变量值;结束循环条件;运算)) do 命令序列 done |
2 while语法
| 语法格式1 | 语法格式2 |
|
while [条件] do 命令格式 done |
while read -r line do 命令序列 done < file |
3 until语法
until [条件]
do
命令序列
done
4 select语法
select与for循环格式相同
六、Shell语法之控制语句
Shell支持的控制语句有shift、continue、break、exit
七、Shell语法之函数
| 语法格式1 | 语法格式2 |
|
name(){ 命令序列 } |
function name{ 命令序列 } |
八、Shell语法之图形脚本
dialog
1 日历对话框
2 选择对话框
3 图形进度条
4 图形密码框
5 消息框
6 确认框
Linux运维初级教程(一)Shell脚本的更多相关文章
- Linux运维初级教程(四)shell简介
查看系统可用的shell命令 cat /etc/shells shell是用于与内核进行交流的工具 管道和重定向(< < > > |) |为管道 标准输入的文件描述符为0,标准 ...
- Linux运维初级教程(三)文件及目录权限
文件类型 -代表普通文件,d代表目录,l代表链接文件,b或c代表设备. 第二至九个字符代表权限,分别为所有者权限.所属组权限.其他账户权限 修改权限用chmod u用户 g组 o其他用户 a所有人 c ...
- Linux运维初级教程(二)账户与安全
知识点 用户ID为UID,组ID为GID,UID=0表示超级管理员即root. 一个用户只可以加入一个基本组,但是可以同时加入多个附加组. 创建用户时,系统默认会自动创建同名的组,并设置用户加入该基本 ...
- 马哥linux运维初级+中级+高级 视频教程 教学视频 全套下载(近50G)
马哥linux运维初级+中级+高级 视频教程 教学视频 全套下载(近50G)目录详情:18_02_ssl协议.openssl及创建私有CA18_03_OpenSSH服务及其相关应用09_01_磁盘及文 ...
- 最适合初学者的Linux运维学习教程2018版
Linux运维工程师是一个新颖岗位,现在非常吃香,目前从行业的角度分析,随着国内软件行业不断发展壮大,越来越多复杂系统应运而生,为了保证系统稳定运行,必须要有足够多的Linux运维工程师.维护是软件生 ...
- Linux运维初级、中级、高级
学习Linux,好的教程.使学习事半功倍! 老男孩Linux.shell.RHCE运维初中高级 下载地址: http://pan.baidu.com/s/1sB3VC 马哥教育Linux初级.中级.高 ...
- 马哥 Linux运维基础进阶和shell入门
地址:http://edu.51cto.com/course/course_id-618.html 紧接马哥linux专题 第一讲 Bash变量: 1byte= -128,127 2bytes -32 ...
- Linux运维比较常用的一些脚本
目录 一.根据PID过滤进程所有信息 二.根据进程名过滤进程信息 三.根据用户名查询该用户的相关信息 四.加固系统的一些配置 五:实现磁盘分区的 六.使用一整块硬盘创建逻辑卷 七.将一块硬盘分区,然后 ...
- Linux运维工程师成长必经之路
本路线图是从0基础开始,全方位由浅入深,按照多年Linux培训经验和优秀教学方法制定的学习思路和学习方法,路线图包括初级入门.中级进阶.高级提升和资深冲刺四个阶段,每阶段对应着不同优秀的课程和学习方法 ...
随机推荐
- linux: shell常用指令归纳
1.软件安装方式: 1)源码安装: ~ wget xxxxxx ~ ./configure ~ make ~ make install 2) yum: ~ yum search : 查找软件包 ~ y ...
- pack、unpack自制二进制“数据库”
引言 pack.unpack函数,如果没有接触过socket,这个可能会比较陌生,这两个函数在socket交互的作用是组包,将数据装进一个二进制字符串,和对二进制字符串中的数据进行解包,这个里面有好多 ...
- Java垃圾收集学习笔记
(1)除了释放不再被引用的对象,垃圾收集器还要处理 堆碎块 .请求分配新对象时可能不得不增大堆空间的大小,虽然可以使用的空闲空间是足够的,但是堆中没有没有连续的空间放得下新对象.可能会导致虚拟机产生不 ...
- CBOW Model Formula Deduction
Paper Reference: word2vec Parameter Learning Explained 1. One-word context Model In our setting, the ...
- Character literal must contain exactly one character -- 一天一点小知识
编程语言高度抽象化以后,错误也越来越让人难以理解了, NET编程最常见的一个错误, Object not set to the reference ,过了好久,才明白过来, 就是不明白为啥微软不说 ...
- 《JavaScript权威指南》学习笔记 第七天 DOM操作
由衷的觉得,随着IT技术的广泛的运用,个人电脑以及智能手机的使用,信息的获取与传播更为简单.但是我们获取有用信息的难度相反是越来越大了,想要保持住自己的注意力越来越难了.除了吃饭睡觉,我的精力都在电脑 ...
- Navicat 的使用(一)
1.创建连接 主机名 : 可以不写名称随意 主机名/IP地址:localhost或者127.0.0.1 都是本机的意思 端口:默认3306 尽量不要改怕与其余端口重复,如有重名端口系统会报错 用户 ...
- loading 加载
<script type="text/javascript" src="jquery-1.3.2.js"></script> <s ...
- sql lock
要提升SQL的查询效能,一般来说大家会以建立索引(index)为第一考虑.其实除了index的建立之外,当我们在下SQL Command时,在语法中加一段WITH (NOLOCK)可以改善在线大量查询 ...
- cpg数据库处理_找到未提取的pdf
cpg数据库处理_找到未提取的pdf,存放于文件夹Chinese_undeal_pdfs move_unextracted_pdfs.py # -*- coding: utf-8 -*- " ...