01shell入门基础
01shell入门基础
为什么学习和使用shell编程
shell是一种脚本语言,脚本语言是相对于编译语言而言的。脚本语言不需要编译,由解释器读取程序并且执行其中的语句,而编译语言需要编译成可执行代码,之后才可以执行。
什么是shell
shell的起源
shell的基本概念
shell的功能
命令解释器shell的分类
作为程序设计语言的shell
shell不仅可以充当用户与Unix或者Linux交互界面的角色,还可以作为一种程序设计语言。
交互式执行
创建脚本
向脚本传递参数
shell脚本的参数
参数如下:

例子:
- #! /bin/bash
- echo "$# parameters"
- echo "$@"
执行结果:

参数的扩展
类似 ls -l
第一个shell程序
一个基本的shell程序,应该包含以下几个元素
“#! /bin/bash":指定解释器
注释:说明某些代码的功能
可执行语句:实现程序的功能
- #! /bin/bash
- echo "hello bash shell!"
注释:
单行注释
多行注释:使用here document
- #! /bin/bash
- :<<BLOCK
- jijgijajg;
- jisijgak
- BLOCK
- echo "hello bash shell!"
shell的退出状态
退出状态由最后一条语句来决定。$?保存了退出状态,0表示成功
- #include <stdio.h>
- int main()
- {
- printf("hello world\n");
- }
01shell入门基础的更多相关文章
- mybatis入门基础(二)----原始dao的开发和mapper代理开发
承接上一篇 mybatis入门基础(一) 看过上一篇的朋友,肯定可以看出,里面的MybatisService中存在大量的重复代码,看起来不是很清楚,但第一次那样写,是为了解mybatis的执行步骤,先 ...
- Markdown入门基础
// Markdown入门基础 最近准备开始强迫自己写博文,以治疗严重的拖延症,再不治疗就“病入骨髓,司命之所属,无奈何”了啊.正所谓“工欲善其事,必先利其器”,于是乎在写博文前,博主特地研究了下博文 ...
- JavaScript入门基础
JavaScript基本语法 1.运算符 运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=).算术运 ...
- C++ STL编程轻松入门基础
C++ STL编程轻松入门基础 1 初识STL:解答一些疑问 1.1 一个最关心的问题:什么是STL 1.2 追根溯源:STL的历史 1.3 千丝万缕的联系 1.4 STL的不同实现版本 2 牛刀小试 ...
- HTML入门基础教程相关知识
HTML入门基础教程 html是什么,什么是html通俗解答: html是hypertext markup language的缩写,即超文本标记语言.html是用于创建可从一个平台移植到另一平台的超文 ...
- Linux shell入门基础(六)
六.Shell脚本编程详解 将上述五部分的内容,串联起来,增加对Shell的了解 01.shell脚本 shell: # #perl #python #php #jsp 不同的脚本执行不同的文本,执行 ...
- Linux shell入门基础(一)
Linux shell入门基础(一): 01.增加删除用户: #useradd byf userdel byf(主目录未删除) userdel -r byf 该用户的属性:usermod 用 ...
- AngularJS入门基础PPT(附下载链接)
学习了Angularjs有段时间,自己写了一个PPT,个人认为总结的非常全面,对于入门基础够了. 大致模块有:Angularjs简单介绍,Angularjs特性,hello world,Control ...
- jQuery Mobile 入门基础教程
jQuery Mobile是jQuery在手机上和平板设备上的版本.jQuery Mobile 不仅会给主流移动平台带来jQuery核心库,而且会发布一个完整统一的jQuery移动UI框架. jQue ...
随机推荐
- Oracle设置自动递增的方法
1)创建序列: create sequence SEQ_TEST --字段名 minvalue 1 --最小值 maxvalue XXXXX --设置最大值 start wit ...
- editor does not contain a main type的解决方案
editor does not contain a main type的解决方案 今天用eclipse,当打算run一个带有main函数的class时,出现editor does not contai ...
- How to do code coverage test for windows service
First, instrument the exe or dll by command vsinstr -coverage the dll/exe second, start the performa ...
- 关于JavaScript 中的变量
JS的变量声明语句永远是在其作用域中最先执行的,不论其定义的位置在哪里: 函数体内部,局部变量的优先级比同名的全局变量高. Javas作用域分类 未使用var定义的变量不论定义在什么位置都是全局变量, ...
- Gradle简介和安装
一.Gradle介绍 Gradle是一个基于JVM的构建工具,它提供了:像Ant一样,通用灵活的构建工具,可以切换的,基于约定的构建框架,强大的多工程构建支持,基于Apache Ivy的强大的依赖管理 ...
- 【JS】点击目标外事件与IFRAM自适应高度
一.点击目标外事件 $(document).mouseup(function(e){ var _con = $('.dropdown-multiSelect-list'); // 设置目标区域 if( ...
- js中的call和apply方法的区别
一.call和apply的说明 1.call,apply都属于Function.prototype的一个方法,它是JavaScript引擎内在实现的,因为属于Function.prototype,所以 ...
- Android App Build System
- mysql my.cnf 配置详解
#配置多实例声明[mysqld_multi]mysqld = /data/mysql_bin/bin/mysqld_safemysqladmin = /data/mysql_bin/bin/mysql ...
- java SHA1WithRSA 算法
import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.InputStrea ...