Shell脚本编程01:基础知识
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:基础知识相关推荐
- linux之基础shell脚本编程1 基础变量赋值
本章主要介绍函数的基础,变量赋值,逻辑运算,条件表达式,测试 linux之基础shell脚本编程1 基础变量赋值 linux之基础shell脚本编程2 if语句循环判断 linux之基础shell脚 ...
- Shell 脚本编程之基础
最近闲着无聊,把笔记写在这吧 0x00 特殊符号和常见的运算符 <1>特殊符号 $*:命令行所有参数组成的字符串 $@:命令行所有参数组成的字符串 $n:n位数字,$0表示命令名称,$1表 ...
- 学习 shell脚本之前的基础知识
见 : http://www.92csz.com/study/linux/12.htm [什么是shell] 简单点理解,就是系统跟计算机硬件交互时使用的中间介质,它只是系统的一个工具.实际上,在sh ...
- python编程01 -- 基础知识
简介 本文主要对运用的python语言知识进行归纳和回顾使用,不定期更新,主要是对语言特性.数据类型.语句块.函数.类.模块.错误.线程.进程等内容的积累 python2/python3 核心类差异 ...
- Linux基础篇--shell脚本编程基础
Linux基础篇–shell脚本编程基础 本章内容概要 编程基础 脚本基本格式 变量 运算 条件测试 配置用户环境 7.1 编程基础 程序:指令+数据 程序编程风格: 过程式:以指令为 ...
- shell编程入门、shell编程的基础知识(变量、命令、运算)、shell编程的语句
shell编程 示例1 ex1 文件内容如下: #!/bin/sh #This is to show what a example looks like. echo "My First Sh ...
- linux基础—课堂随笔_03 SHELL脚本编程基础
shell脚本编程基础 条件选择:if语句 选择执行: 注意:if语句可嵌套 单分支 if(开头)判断条件:then 条件为真的分支代码 fi(结尾) 双分支 if(开头)判断条件:then 条件为 ...
- Linux Shell脚本编程基础
2 Linux Shell脚本编程基础 发表于: Linux, Shell, UNIX, 资源分享 | 作者: 谋万世全局者 标签: Linux,Shell,编程基础,脚本 本文作者:Leal 授权许 ...
- shell脚本编程学习笔记1(xdl)——shell基础与Bash基本功能()
shell脚本编程学习笔记1--shell基础与Bash基本功能 1,简介: 1,Shell就是一个命令行解释器,用以连接输入设别和内核. 2,Shell是解 释执行的脚本语言,在Shell中可以直接 ...
最新文章
- 如何通过中序和层序序列建立二叉树
- C# Redis写入程序
- Python爬虫==入门基础概念
- wdtree简介、使用
- ITK:使用ParallelizeImageRegion
- 实施自定义JMeter采样器
- Yahoo数据仓库架构简介
- JVM程序计数器,虚拟机栈,本地方法栈
- EMNLP 2018 | 为什么使用自注意力机制?
- Java的jps命令使用详解
- 两台redhat7虚拟机配置ssh免密访问
- GM505高斯计使用方法图解
- 让犀牛基于点云数据来完成逆向建模
- 华为认证哪个方向好学?
- 2021最新(ISC)2 CISSP 考试费用列表
- 网站使用云服务器有什么好处?
- 简单粗暴PyTorch之transforms详解(一)
- Lunix入门到精通-网络排查工具 MTR
- Maven问题总结 - 3 - 技术改变生活商业成就梦想 - 51CTO技术博客
- 筛选后系列填充_Excel2013里筛选后复制粘贴制作成绩表方法大剖析,3分钟搞定...
热门文章
- svn更新提交等操作报svn: E155004错误,解决办法
- 最详细的CISCO路由器配置命令及方法
- 一个APP“感知”北京门头沟的城市智慧
- OGG目标端复制Sequence时Hang住的问题
- KeyMob聚合平台--国内口碑最好的移动广告聚合平台
- 使程序变为后台运行代码
- [转载] 七龙珠第一部——第092话 孙悟空上场了
- 智能实验室-全能优化(Guardio) 4.96.0.850
- “实模式--保护模式--实模式”转换过程
- Struts2 action之间相互跳转传递参数