“windows的批处理”与“Linux的shell script”的类比学习
从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”的类比学习的更多相关文章
- Linux的shell script
Linux的shell script //编辑shell: vi a.sh //子进程运行shell sh a.sh //主线程运行shell source a.sh 相关例子: #!/bin/bas ...
- linux中shell script的追踪与调试
Shell调试篇 sh [-nvx] scripts.sh -n:不要执行script,仅查询语法的问题: -v:在执行script前,先将script的内容输出到屏幕上: -x:将使用到的scrip ...
- 一起来学linux:shell script(一)关于变量
p { margin-bottom: 0.25cm; line-height: 120% } (一)首先来看什么是变量,在shell中打印出变量采用的是echo $path或者echo ${path} ...
- 一起来学linux:shell script(二)关于脚本
(一)首先来看shell脚本的执行方式,shell脚本的后缀名都是sh文件. 1 sh test.sh 2 source test.sh 这两种方式有什么区别呢.test.sh 里的脚本很简单, 从键 ...
- 调用远程linux服务器shell脚本
package com.haiyisoft.hyoaPc.ui; import java.io.BufferedReader;import java.io.IOException;import jav ...
- Jenkins 六: 构建中执行shell或者 windows的批处理程序
Shell/ bat Jenkins 可以在构建中执行shell命令或者windows的batch 命令. 1. 选择一个项目,点击“配置”. 2. 找到“构建” –> “增加构建步骤”.选择 ...
- (copy) Shell Script to Check Linux System Health
source: http://linoxide.com/linux-shell-script/shell-script-check-linux-system-health/ This article ...
- 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 ...
- linux基础之Shell Script入门介绍
本文介绍下,学习shell script编程的入门知识,通过几个入门实例,带领大家走进shell script的神圣殿堂,呵呵,有需要的朋友参考下. 本文转自:http://www.jbxue.com ...
随机推荐
- 【转】ubuntu 打开命令行窗口的方法
1. CTRL+ALT+T 2. ALT+F2调出Run a Command,输入gnome-terminal 3. 单击dash home这个按钮,输入te,就可以看到Terminal终端的选项了
- 6.面向对象 -类.md
目录 1. static: 2. 类在内存中,每一个类在创建在栈内存中,当创建一个对象的时候,将非类变量再堆内存中创建,而类变量是不会因为创建对象而在堆中重新创建 3. 对象.引用和指针: 4. 类名 ...
- 自定义 mapper的实现
json格式,要想好看直接百度,json,将字符放进去就可 一步:将mapper复制一份,名字加一个Custom自定义 二步:mpper.xml也是一样,设置里面的namespace映射关系 自定义m ...
- Hibernate学习笔记1.2(Annotation版本的Helloworld)
hibernate 3.0之后开始支持Annotation 接着1.1的项目 首先 需要创建model Teacher.java. package com.hw.hibernate.model; pu ...
- listview点击checkbox,修改值
1.初始化控件 listView1.Items.Clear(); listView1.Columns.Clear(); ColumnHeader ch = ...
- Linux非常有用的命令
<判断用户是否存在,如不存在则新建> user=`grep '^admin:' /etc/passwd`if [ -z "$user" ];then groupadd ...
- Failed to read schema document 'http://www.springframework.org/schema/beans/spring-beans.xsd'
明明项目没错误,但application.xml就报了错误,这是什么问题呢? 问题在于我们找不到org/springframework/beans/spring-beans这个包,也就是我们的spri ...
- HashMap、LinkedHashMap、ConcurrentHashMap、ArrayList、LinkedList 底层实现
HashMap相关问题 1.你用过HashMap吗?什么是HashMap?你为什么用到它? 用过,HashMap是基于哈希表的Map接口的非同步实现,它允许null键和null值,且HashMap依托 ...
- ServiceWorker.state
[ServiceWorker.state] ServiceWorker.state The state read-only property of the ServiceWorker interfac ...
- 10大H5前端框架(转)
10大H5前端框架 作为一名做为在前端死缠烂打6年并且懒到不行的攻城士,这几年我还是阅过很多同门从知名到很知名的各种前端框架,本来想拿15-20个框架来分享一下,但在跟几个前辈讨教写文章的技巧时果断被 ...