[shell编程]一个简单的脚本
首先,为什么要学习shell呢?哈哈,当然不是shell能够怎样怎样然后100字。
最近看到一篇博文《开阔自己的视野,勇敢的接触新知识》,读完反思良久。常常感慨自己所会不多,对新知识又有畏惧心理,导致自己停滞不前。古人说,逆水行舟不进则退。既然如此,何不走出自己的舒适区,迎接新挑战!
好了,闲话不多说,开始我的shell学习之旅。
(ps:阅读本文需要熟悉一些linux基本命令;本文给出的都是简单shell脚本的模板,开门见山,一步到位。我觉得这是快速学习的一种非常好的方法。)
1.一个简单的shell脚本
a.编辑脚本

在创建shell脚本文件时,必须在文件的第一行指定要使用的shell,其格式为#!/bin/bash
在shell脚本里,#用作注释行;
b.增加权限
#chmod u+x myshell_01.sh
c.执行脚本
#./myshell_01.sh
这样,一个简单的脚本就写好了。^ ^
2.使用变量

上面的脚本定义了一个变量NAME,当然shell脚本中不需要像C语言也一样事先给出声明。变量通过$引用。例如:
#chmod myshell_02.sh
#./myshell_02.sh
Please input your name:SevenYearsLater
Welcome SevenYearsLater!

反引号允许将shell命令的输出赋给变量。这一点非常重要。脚本中testing收到date命令输出,并在echo语句中显示出来。
3.结构化命令
| 比较 描述 |
|
n1 -eq n2 n1是否等于n2 n1 -ge n2 n1是否大于等于n2 n1 -gt n2 n1是否大于n2 n1 -le n2 n1是否小于等于n2 n1 -lt n2 n1是否小于n2 n1 -ne n2 n1是否不等于于n2 |
a.if-then命令

b.case命令

c.for命令

d.while命令

本文主要学习了如何编写一个简单的shell脚本,包括如何显示消息、使用变量、以及使用结构化语句等。
[shell编程]一个简单的脚本的更多相关文章
- shell编程系列26--大型脚本工具开发实战
shell编程系列26--大型脚本工具开发实战 大型脚本工具开发实战 拆分脚本功能,抽象函数 .function get_all_group 返回进程组列表字符串 .function get_all_ ...
- socket编程——一个简单的样例
从一个简单的使用TCP样例開始socket编程,其基本过程例如以下: server client ++ ...
- socket编程——一个简单的例子
从一个简单的使用TCP例子开始socket编程,其基本步骤如下: server client ++++ ...
- Linux - 简明Shell编程01 - 第一个脚本(HelloShell)
脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash echo "hell ...
- 测试网站页面网速的一个简单Python脚本
无聊之余,下面分享一个Python小脚本:测试网站页面访问速度 [root@huanqiu ~]# vim pywww.py #!/usr/bin/python # coding: UTF-8 imp ...
- Python并发编程-一个简单的爬虫
一个简单的爬虫 #网页状态码 #200 正常 #404 网页找不到 #502 504 import requests from multiprocessing import Pool def get( ...
- 【原】shell编写一个简单的jmeter自动化压测脚本
在公司做压力测试也挺长时间了,每次测试前环境数据准备都需要话费较长时间,所以一直在考虑能不能将整个过程实现自动化进行,于是就抽空写了一个自动化脚本,当然这个脚本目前功能十分简陋,代码也不完善,很有很多 ...
- 用shell写一个简单DHCP配置脚本
轩轩写的这个小脚本,主要是可以进行对dhcp服务的安装.简单配置.开启.关闭/查看状态等情况 使用呢非常简单,按照步骤进行准确的设置就可以啦 #!/bin/bashyum -y install dhc ...
- 小鸟初学Shell编程(三)脚本不同执行方式的影响
执行命令的方式 执行Shell脚本的方式通常有以下四种 方式一:bash ./test.sh 方式二:./test.sh 方式三:source ./test.sh 方式四:. ./test.sh 执行 ...
随机推荐
- HDU 5024 Wang Xifeng's Little Plot(枚举)
题意:求一个图中只有一个90°拐点的路的最大长度. 分析:枚举每一个为'.'的点,求出以该点为拐点的八种路中的最大长度,再比较所有点,得出最大长度即可. 如上样例,这样是个90°的角... 注意:最多 ...
- Fedora 19 配置参考
1. 安装完Fedora 19之后,第一件事不是升级系统,而是添加源. 下载我配置好的源,非常全面,适用Fedora 19 x86_64.点我下载 打开终端,切换到repo.zip所在目录:mv re ...
- python自定义日志函数测试
#!/user/bin/python # -*- encoding: UTF-8 -*- import sys def logs(): print sys._getframe().f_code.co_ ...
- 《Linux shell编程中 diff与vimdif的使用》RHEL6
linux比较2个文件的区别有两个命令: (1)diff (2)vimdiff cp /etc/grub.conf hello 在hello文件的末尾添加zhangsan 使用diff比较2个文件的区 ...
- ROS ZYNQ移植
1 准备工作 全部是按照官方操作的:http://wiki.ros.org/groovy/Installation/Source apt-get install python-rosdep py ...
- zedboard 中SDK 修改串口设置(波特率。。。。)
其实在zedboard SDK中不用初始化串口的也就是platform()可以不写 ,初始化在EDK导入SDK中就写好了 具体看bsp文件夹下面的汇编.但是如果我们想要在SDK中改变串口设置的话 ...
- yum安装报错有冲突file /usr/lib64/php/modules/fileinfo.so conflicts between
yum安装报错有冲突file /usr/lib64/php/modules/fileinfo.so conflicts between attempted installs of php-pecl-f ...
- mina socket底层主流程源码实现
一,mina的架构 mina 架构可以大致分为三部分,ioService ,ioFilterChain , IoHandler ioService:用于接受服务或者连接服务,例如socket 接收 ...
- RHEL7 Ansible
[root@promote tt]# rpm -iUvh http://dl.Fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch ...
- 基于UUID生成短ID
为什么需要短ID 数据库操作过程最常用到: 自增ID UUID 前者多数依赖Mysql的auto_increment,但数据移植麻烦. 如果是主从或主主,不同库里自增ID还可能不一致. 后者长度是个问 ...