从2005年开始,做了将近10年的系统维护,先是做网络接入管理,然后做网络安全与审计,然后做服务器管理等整个网络系统的运营管理;现在又兼着做一些Linux下的视频监控系统的软硬件维护。过程中遇到太多重复性任务,比如终端用户的管理策略下发(日志大小空间大小设置、服务启用、网络NetBIOS设置、USB设备检查、时间服务设置、补丁升级以及IPSec策略下发),Linux下的iptables及常规服务安装等,必须借助脚本来实现。当然用起来效果会相当的好,把手动10来分钟的任务使用脚本在不到1分钟就完成,而且不会出错,很不错啊。如果是10台终端,没有多大意义,那么到上千台终端,效果就很明显了,尤其用户水平不高且维护人员又紧缺。

1、某种程度上讲,“windows的批处理”与“Linux的shell script”都是将一系列重复执行的任务,使用一系列相关联的命令行来简化处理过程,他们都必须有如下知识前提:

编程的思想:有逻辑管理,有状态,有模块化思想。主要用于模拟管理者的思想。

系统管理命令:在编程的基础上逻辑应用系统命令来执行任务,模拟人工操作。

2、在变量应用方面

windows下常用set ,可以设置,也可以/p来读取输入。

Linux下则相对简单,只是读入时需要用到read -p;并且,Linux下更为智能化。

3、脚本与过程调用

它们都存在过程设计,可以用模块化设计来组织功能,并且可以传参。

4、逻辑控制

它们都存在if、for语句控制,Linux下除了有自己的格式,还可以使用类C风格语句。

在选择方面,windows下有choice,Linux下则有select。

至于不同点,则需要区分学习了。真的很方便。

“windows的批处理”与“Linux的shell script”的类比学习的更多相关文章

  1. Linux的shell script

    Linux的shell script //编辑shell: vi a.sh //子进程运行shell sh a.sh //主线程运行shell source a.sh 相关例子: #!/bin/bas ...

  2. linux中shell script的追踪与调试

    Shell调试篇 sh [-nvx] scripts.sh -n:不要执行script,仅查询语法的问题: -v:在执行script前,先将script的内容输出到屏幕上: -x:将使用到的scrip ...

  3. 一起来学linux:shell script(一)关于变量

    p { margin-bottom: 0.25cm; line-height: 120% } (一)首先来看什么是变量,在shell中打印出变量采用的是echo $path或者echo ${path} ...

  4. 一起来学linux:shell script(二)关于脚本

    (一)首先来看shell脚本的执行方式,shell脚本的后缀名都是sh文件. 1 sh test.sh 2 source test.sh 这两种方式有什么区别呢.test.sh 里的脚本很简单, 从键 ...

  5. 调用远程linux服务器shell脚本

    package com.haiyisoft.hyoaPc.ui; import java.io.BufferedReader;import java.io.IOException;import jav ...

  6. Jenkins 六: 构建中执行shell或者 windows的批处理程序

    Shell/ bat Jenkins 可以在构建中执行shell命令或者windows的batch 命令. 1. 选择一个项目,点击“配置”. 2. 找到“构建” –> “增加构建步骤”.选择 ...

  7. (copy) Shell Script to Check Linux System Health

    source: http://linoxide.com/linux-shell-script/shell-script-check-linux-system-health/ This article ...

  8. Shell script for logging cpu and memory usage of a Linux process

    Shell script for logging cpu and memory usage of a Linux process http://www.unix.com/shell-programmi ...

  9. linux基础之Shell Script入门介绍

    本文介绍下,学习shell script编程的入门知识,通过几个入门实例,带领大家走进shell script的神圣殿堂,呵呵,有需要的朋友参考下. 本文转自:http://www.jbxue.com ...

随机推荐

  1. 【转】ubuntu 打开命令行窗口的方法

    1. CTRL+ALT+T 2. ALT+F2调出Run a Command,输入gnome-terminal 3. 单击dash home这个按钮,输入te,就可以看到Terminal终端的选项了

  2. 6.面向对象 -类.md

    目录 1. static: 2. 类在内存中,每一个类在创建在栈内存中,当创建一个对象的时候,将非类变量再堆内存中创建,而类变量是不会因为创建对象而在堆中重新创建 3. 对象.引用和指针: 4. 类名 ...

  3. 自定义 mapper的实现

    json格式,要想好看直接百度,json,将字符放进去就可 一步:将mapper复制一份,名字加一个Custom自定义 二步:mpper.xml也是一样,设置里面的namespace映射关系 自定义m ...

  4. Hibernate学习笔记1.2(Annotation版本的Helloworld)

    hibernate 3.0之后开始支持Annotation 接着1.1的项目 首先 需要创建model Teacher.java. package com.hw.hibernate.model; pu ...

  5. listview点击checkbox,修改值

    1.初始化控件 listView1.Items.Clear();            listView1.Columns.Clear();            ColumnHeader ch = ...

  6. Linux非常有用的命令

    <判断用户是否存在,如不存在则新建> user=`grep '^admin:' /etc/passwd`if [ -z "$user" ];then groupadd ...

  7. Failed to read schema document 'http://www.springframework.org/schema/beans/spring-beans.xsd'

    明明项目没错误,但application.xml就报了错误,这是什么问题呢? 问题在于我们找不到org/springframework/beans/spring-beans这个包,也就是我们的spri ...

  8. HashMap、LinkedHashMap、ConcurrentHashMap、ArrayList、LinkedList 底层实现

    HashMap相关问题 1.你用过HashMap吗?什么是HashMap?你为什么用到它? 用过,HashMap是基于哈希表的Map接口的非同步实现,它允许null键和null值,且HashMap依托 ...

  9. ServiceWorker.state

    [ServiceWorker.state] ServiceWorker.state The state read-only property of the ServiceWorker interfac ...

  10. 10大H5前端框架(转)

    10大H5前端框架 作为一名做为在前端死缠烂打6年并且懒到不行的攻城士,这几年我还是阅过很多同门从知名到很知名的各种前端框架,本来想拿15-20个框架来分享一下,但在跟几个前辈讨教写文章的技巧时果断被 ...