Shell脚本与Windows/Dos下的批处理相似,就是将各类命令预先放入到一个文件中,然后执行该文件,便可以达到与批处理类似的功能,主要是方便管理员进行设置或者管理用的。

  换句话来说,shell脚本是利用shell的功能所写的一个程序,这个程序使用纯文本文件,将一些shell的语法与指令写在里面,然后用正规表示法,管线命令以及数据流重导向等功能,以达到我们所想要的处理目的。

  这里有必要说一下shell和shell脚本的区别。

  Shell就是一个命令行解释器,它的作用就是遵循一定的语法将输入的命令加以解释并传给系统。它为用户提供了一个向Linux发送请求以便运行程序的接口系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。

  Shell既是一种命令语言,又是一种程序设计语言(shell脚本)。作为命令语言,它互动式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高阶语言中才具有的控制结构,包括循环和分支。它虽然不是 Linux系统内核的一部分,但它调用了系统内核的大部分功能来执行程序、创建文档并以并行的方式协调各个程序的运行。

1.语法基础

  1.1开头

  Shell脚本程序必须以如下的语句行开始(必须方在文件的第一行):

  #!/bin/sh

  “#!/bin/sh"是对shell的声明,说明你所用的是那种类型的shell及其路径所在。如果没有该语句声明,则脚本将在默认的shell中执行。

  1.2注释

  在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。

  备注:“#!/bin/sh"不是注释。

  1.3变量

  在shell编程中,所有的变量都由字符串组成,并且不需要对变量进行声明。对变量赋值,可以使用如下语句:

  var="hello world"

  备注:“=”前后不能有空格,句尾不能有“;”。

2.常用指令

  echo "some text": 将文字内容打印在屏幕上

  ls: 文件列表

  wc –l filename:计算文件行数

  wc -w filename:计算文件中的单词数

  wc -c filename: 计算文件中的字符数

  cp sourcefile destfile: 文件拷贝

  mv oldname newname : 重命名文件或移动文件

  rm filename: 删除文件

  grep 'string' filename: 在文件内搜索字符串

  cat filename: 输出文件内容到屏幕上

  file filename: 得到文件类型

  read var: 提示用户输入,并将输入赋值给变量

  find: 搜索文件

  tee: 将数据输出到标准输出设备(屏幕) 和文件比如:somecommand | tee outfile

  basename filename: 返回不包含路径的文件名

  dirname filename: 返回文件所在路径

  sed: 查找替换

Shell脚本编程01:基础知识相关推荐

  1. linux之基础shell脚本编程1 基础变量赋值

    本章主要介绍函数的基础,变量赋值,逻辑运算,条件表达式,测试 linux之基础shell脚本编程1  基础变量赋值 linux之基础shell脚本编程2 if语句循环判断 linux之基础shell脚 ...

  2. Shell 脚本编程之基础

    最近闲着无聊,把笔记写在这吧 0x00 特殊符号和常见的运算符 <1>特殊符号 $*:命令行所有参数组成的字符串 $@:命令行所有参数组成的字符串 $n:n位数字,$0表示命令名称,$1表 ...

  3. 学习 shell脚本之前的基础知识

    见 : http://www.92csz.com/study/linux/12.htm [什么是shell] 简单点理解,就是系统跟计算机硬件交互时使用的中间介质,它只是系统的一个工具.实际上,在sh ...

  4. python编程01 -- 基础知识

    简介 本文主要对运用的python语言知识进行归纳和回顾使用,不定期更新,主要是对语言特性.数据类型.语句块.函数.类.模块.错误.线程.进程等内容的积累 python2/python3 核心类差异 ...

  5. Linux基础篇--shell脚本编程基础

    Linux基础篇–shell脚本编程基础 本章内容概要  编程基础  脚本基本格式  变量  运算  条件测试  配置用户环境 7.1 编程基础 程序:指令+数据 程序编程风格:   过程式:以指令为 ...

  6. shell编程入门、shell编程的基础知识(变量、命令、运算)、shell编程的语句

    shell编程 示例1 ex1 文件内容如下: #!/bin/sh #This is to show what a example looks like. echo "My First Sh ...

  7. linux基础—课堂随笔_03 SHELL脚本编程基础

    shell脚本编程基础 条件选择:if语句 选择执行: 注意:if语句可嵌套 单分支 if(开头)判断条件:then 条件为真的分支代码  fi(结尾) 双分支 if(开头)判断条件:then 条件为 ...

  8. Linux Shell脚本编程基础

    2 Linux Shell脚本编程基础 发表于: Linux, Shell, UNIX, 资源分享 | 作者: 谋万世全局者 标签: Linux,Shell,编程基础,脚本 本文作者:Leal 授权许 ...

  9. shell脚本编程学习笔记1(xdl)——shell基础与Bash基本功能()

    shell脚本编程学习笔记1--shell基础与Bash基本功能 1,简介: 1,Shell就是一个命令行解释器,用以连接输入设别和内核. 2,Shell是解 释执行的脚本语言,在Shell中可以直接 ...

最新文章

  1. 如何通过中序和层序序列建立二叉树
  2. C# Redis写入程序
  3. Python爬虫==入门基础概念
  4. wdtree简介、使用
  5. ITK:使用ParallelizeImageRegion
  6. 实施自定义JMeter采样器
  7. Yahoo数据仓库架构简介
  8. JVM程序计数器,虚拟机栈,本地方法栈
  9. EMNLP 2018 | 为什么使用自注意力机制?
  10. Java的jps命令使用详解
  11. 两台redhat7虚拟机配置ssh免密访问
  12. GM505高斯计使用方法图解
  13. 让犀牛基于点云数据来完成逆向建模
  14. 华为认证哪个方向好学?
  15. 2021最新(ISC)2 CISSP 考试费用列表
  16. 网站使用云服务器有什么好处?
  17. 简单粗暴PyTorch之transforms详解(一)
  18. Lunix入门到精通-网络排查工具 MTR
  19. Maven问题总结 - 3 - 技术改变生活商业成就梦想 - 51CTO技术博客
  20. 筛选后系列填充_Excel2013里筛选后复制粘贴制作成绩表方法大剖析,3分钟搞定...

热门文章

  1. svn更新提交等操作报svn: E155004错误,解决办法
  2. 最详细的CISCO路由器配置命令及方法
  3. 一个APP“感知”北京门头沟的城市智慧
  4. OGG目标端复制Sequence时Hang住的问题
  5. KeyMob聚合平台--国内口碑最好的移动广告聚合平台
  6. 使程序变为后台运行代码
  7. [转载] 七龙珠第一部——第092话 孙悟空上场了
  8. 智能实验室-全能优化(Guardio) 4.96.0.850
  9. “实模式--保护模式--实模式”转换过程
  10. Struts2 action之间相互跳转传递参数