一.概述 在linux中,很多程序和脚本都通过环境变量来获取系统信息,存储临时数据,配置信息.环境变量是指用来存储有关shell会话和工作环境信息,允许你在内存中存储数据,以便程序或shell中运行的脚本能够轻松访问到它们.也是存储持久数据的一种简便方法.在bash shell中,环境变量分为:全局和局部二类环境变量. 1.1全局环境变量 全局环境变量对于shell会话和所有生成的子shell都是可见的.局部变量则只是创建它们的shell可见.在linux系统中有系统环境变量,它们基本都是使用全…
1. 输出重定向 最基本的重定向是将命令的输出发送到一个文件中.在bash shell中用大于号(>) ,格式如下:command > inputfile.例如:将date命令的输出内容,保存到指定的输出文件中. 如果文件已存在,重定向操作符会用新的文件数据覆盖已有文件.这种情况下可以用双大于号(>>) 来追加数据.如下图所示: 2. 输入重定向 输入重定向和输出重定向正好相反.输入重定向是将文件的内容重定向到命令,而非将命令的输出重定向到文件. 输入重定向符号是小于号(<)…
一.概述 接着上篇讲的结构化命令,最后讲到了test命令的另一种写法 if [ condition ],它的语法格式如下: --格式如下: if [ condition ] then commands fi 第一个方括号之后和第二个方括号之前必须加上一个空格,否则就会报错.test命令可以判断三类条件:(1)数值比较(2)字符串比较(3)文件比较. 1.1  数值比较 比较 描述 例如 n1 -gq n2 检查n1是否与n2相等 N1 ==N2 n1 -ge n2 检查n1是否大于或等于n2 N…
一.概述 这篇介绍shell的变量使用,跟其实语言一样,都有声明变量,使用变量,在shell中变量允许你临时地将信息存储中shell脚本中,以便和脚本的其他命令一起使用. 1.1 环境变量 在前面章节到了linux系统的环境变量,也可以在脚本中访问这些值.下面使用set 命令来查看当前系统的环境变量列表: [root@hsr ~]# set 截图一小部分,如下所示: 使用echo 在环境变量这前加上美元符($)来使用这些变量,如下图所示:  如果使用echo输出的字符串里含有$符号时,要加上返斜…
bash脚本编程       脚本文件格式:         第一行,顶格:#!/bin/bash         注释信息:#         代码注释:         缩进,适度添加空白行:               语言:编程语法格式,库,算法和数据结构     编程思想:         问题空间 --> 解空间               变量:         局部变量         本地变量         环境变量                   位置参数变量     …
一概述 前面19章里已经掌握了linux系统和命令行的基础知识,从本章开始继续学习shell脚本的基础知识.在大量编辑shell脚本前,先来学习下一些基本概念. 1.1    使用多个命令 Shell可以让多个命令串起来,一次执行完成,可以把它们放在同一行中,用分号隔开,如下所示: 上面就是一个简单的脚本了,用到了两个bash shell命令,但每次运行之前,都必须在命令提示符下输入整个命令.如果将命令组合成一个简单的文本文件,需要时运行这个文本文件就行了. 1.2    创建shell 脚本文…
一.概述 在上一篇里讲到了shell脚本,shell按照命令在脚本中出现的顺序依次进行处理,对于顺序操作已经足够了,但许多程序要求对shell脚本中的命令加入一些逻辑流程控制,这样的命令通常叫做 结构化命令. 1.1 使用if - then语句 --最基本的结构化就是if -then语句,格式如下: if command then commands fi 在其他编程语言中,if是一个等式,值结果为ture或false,但在bash shell的if语句并不是这样.在bash shell的if语句…
一.  内部命令 Linux命令有内部命令(内建命令)和外部命令之分,内部命令和外部命令功能基本相同,但也有些细微差别.内部命令不需要使用子进程来执行,它们已经和shell编译成一体,作为shell工具的组成部分存在.不需要借助外部程序文件来运行.它们是一些比较简单的linux系统命令,如exit,history,cd,echo等. 要分区是外部命令还是内部命令可以使用type  来查看,如下图查看cd是内部还是外部命令: 1.1命令别名 alias 命令也是一个内建命令,允许你为常用的命令和参…
一. shell类型 1.1  交互式 bin/ shell程序 当用户登录到某个虚拟控制台终端或是在GUI中启动终端仿真器时,默认的shell程序就会开始运行.系统启动什么样的shell程序取决于你个人的用户ID配置,在etc/passwd文件中.如下图所示,root用户使用bash shell作为自己的默认shell程序. bash shell程序位于/bin目录下,使用长列表可以看出它是一个可执行程序: 像/bin/tcsh 或/bin/dash 或/bin/csh 这些都是shell程序…
随笔分类 - linux 编程 Linux编程 24 shell编程(结构化 if [ condition ] 数值比较,字符串比较) 摘要: 一.概述 接着上篇讲的结构化命令,最后讲到了test命令的另一种写法 if [ condition ],它的语法格式如下: 第一个方括号之后和第二个方括号之前必须加上一个空格,否则就会报错.test命令可以判断三类条件:(1)数值比较(2)字符串比较(3)文件比较. 1.1 数值比较 比较 描述 例阅读全文 posted @ 2018-10-16 17:…