首先,为什么要学习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编程]一个简单的脚本的更多相关文章

  1. shell编程系列26--大型脚本工具开发实战

    shell编程系列26--大型脚本工具开发实战 大型脚本工具开发实战 拆分脚本功能,抽象函数 .function get_all_group 返回进程组列表字符串 .function get_all_ ...

  2. socket编程——一个简单的样例

    从一个简单的使用TCP样例開始socket编程,其基本过程例如以下: server                                                  client ++ ...

  3. socket编程——一个简单的例子

    从一个简单的使用TCP例子开始socket编程,其基本步骤如下: server                                                  client ++++ ...

  4. Linux - 简明Shell编程01 - 第一个脚本(HelloShell)

    脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash echo "hell ...

  5. 测试网站页面网速的一个简单Python脚本

    无聊之余,下面分享一个Python小脚本:测试网站页面访问速度 [root@huanqiu ~]# vim pywww.py #!/usr/bin/python # coding: UTF-8 imp ...

  6. Python并发编程-一个简单的爬虫

    一个简单的爬虫 #网页状态码 #200 正常 #404 网页找不到 #502 504 import requests from multiprocessing import Pool def get( ...

  7. 【原】shell编写一个简单的jmeter自动化压测脚本

    在公司做压力测试也挺长时间了,每次测试前环境数据准备都需要话费较长时间,所以一直在考虑能不能将整个过程实现自动化进行,于是就抽空写了一个自动化脚本,当然这个脚本目前功能十分简陋,代码也不完善,很有很多 ...

  8. 用shell写一个简单DHCP配置脚本

    轩轩写的这个小脚本,主要是可以进行对dhcp服务的安装.简单配置.开启.关闭/查看状态等情况 使用呢非常简单,按照步骤进行准确的设置就可以啦 #!/bin/bashyum -y install dhc ...

  9. 小鸟初学Shell编程(三)脚本不同执行方式的影响

    执行命令的方式 执行Shell脚本的方式通常有以下四种 方式一:bash ./test.sh 方式二:./test.sh 方式三:source ./test.sh 方式四:. ./test.sh 执行 ...

随机推荐

  1. HDU 5024 Wang Xifeng's Little Plot(枚举)

    题意:求一个图中只有一个90°拐点的路的最大长度. 分析:枚举每一个为'.'的点,求出以该点为拐点的八种路中的最大长度,再比较所有点,得出最大长度即可. 如上样例,这样是个90°的角... 注意:最多 ...

  2. Fedora 19 配置参考

    1. 安装完Fedora 19之后,第一件事不是升级系统,而是添加源. 下载我配置好的源,非常全面,适用Fedora 19 x86_64.点我下载 打开终端,切换到repo.zip所在目录:mv re ...

  3. python自定义日志函数测试

    #!/user/bin/python # -*- encoding: UTF-8 -*- import sys def logs(): print sys._getframe().f_code.co_ ...

  4. 《Linux shell编程中 diff与vimdif的使用》RHEL6

    linux比较2个文件的区别有两个命令: (1)diff (2)vimdiff cp /etc/grub.conf hello 在hello文件的末尾添加zhangsan 使用diff比较2个文件的区 ...

  5. ROS ZYNQ移植

    1  准备工作 全部是按照官方操作的:http://wiki.ros.org/groovy/Installation/Source   apt-get install python-rosdep py ...

  6. zedboard 中SDK 修改串口设置(波特率。。。。)

    其实在zedboard   SDK中不用初始化串口的也就是platform()可以不写 ,初始化在EDK导入SDK中就写好了  具体看bsp文件夹下面的汇编.但是如果我们想要在SDK中改变串口设置的话 ...

  7. 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 ...

  8. mina socket底层主流程源码实现

    一,mina的架构 mina 架构可以大致分为三部分,ioService ,ioFilterChain , IoHandler   ioService:用于接受服务或者连接服务,例如socket 接收 ...

  9. RHEL7 Ansible

    [root@promote tt]# rpm -iUvh http://dl.Fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch ...

  10. 基于UUID生成短ID

    为什么需要短ID 数据库操作过程最常用到: 自增ID UUID 前者多数依赖Mysql的auto_increment,但数据移植麻烦. 如果是主从或主主,不同库里自增ID还可能不一致. 后者长度是个问 ...