整理自: https://www.runoob.com/?s=shell Shell 脚本(shell script),是一种为 shell 编写的脚本程序. 业界所说的 shell 通常都是指 shell 脚本,但读者朋友要知道,shell 和 shell script 是两个不同的概念. 由于习惯的原因,简洁起见,本文出现的 "shell编程" 都是指 shell 脚本编程,不是指开发 shell 自身. 用shell脚本可以在linux中很方便的执行一些机械的操作. 这个hell…
执行shell脚本时失败,报语法错误,但脚本内容检查正常 原因为该脚本是在非Linux系统下编辑之后放到系统执行的,文件模式类型非Linux系统匹配的模式类型. 查看文件的模式类型 显示文件的模式类型为 dos 修改文件的模式类型为Linux匹配的 unix 保存之后即可正常启动脚本.…
Shell中的变量   Linux Shell中的变量分为“系统变量”和“用户自定义变量”,可以通过set命令查看那系统变量 系统变量:$HOME.$PWD.$SHELL.$USER等等 显示当前shell中所有变量  :    set   定义变量 •变量=值 (例如STR=abc) •等号两侧不能有空格 •变量名称一般习惯为大写 •双引号和单引号有区别,双引号仅将空格脱意,单引号会将所有特殊字符脱意 STR="hello world" A=9 unset A 撤销变量 A read…
5.1 1. cat /etc/passwd 可以查看每个用户自己的默认的shell程序. 2.默认的交互shell会在用户登录某个虚拟控制台终端时启动. 不过还有另外一个默认的shell是/bin/sh,它作为默认的shell,用于那些需要在启动时使用的shell脚本 ls -l /bin/sh   进行查看 乌班图的发行版中默认的系统shell(dash shell)和默认的交互shell(bash shell)并不相同. 可以直接 dash 来启动 dash shell exit 退出 5…
上面提到过,Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本. Unix/Linux上常见的Shell脚本解释器有bash.sh.csh.ksh等,习惯上把它们称作一种Shell.我们常说有多少种Shell,其实说的是Shell脚本解释器. bash bash是Linux标准默认的shell,本教程也基于bash讲解.bash由Brian Fox和Chet Ramey共同完成,是BourneAgain Shell的缩写,内部命令一共有40个. Linux使用它作为默认的shell是因…
当用户登录终端的时候,通常会启动一个默认的交互式shell.系统究竟启动哪个shell,这取决于用户配置.一般这个shell都是/bin/shell.默认的系统shell(/bin/sh)用于系统shell脚本,如那些在系统启动时运行的脚本. 用于登录某个虚拟控制器终端或在GUI中运行终端仿真器时所启动的默认的交互shell,是一个父shell.在CLI提示符后输入/bin/bash命令或其他等效的bash命令时,会创建一个新的shell程序.这个shell程序被称为子shell. 使用$ps…
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:…
在fun.sh 文件里,使用函数来封装脚本内容 usege() { echo "hello world" echo "脚本怎么使用函数......"}usege 12345格式:[^1] 函数名(){脚本内容......}函数名 脚本函数传参#!/bin/bashusege() { echo "脚本怎么使用函数......" echo "参数个数:$#" echo "第一个数:$1" echo "…
一.基本的控制结构 1.控制流 常见的控制流就是if.then.else语句提供测试条件,测试条件可以基于各种条件.例如创建文件是否成功.是否有读写权限等,凡是执行的操作有失败的可能就可以用控制流,注意控制流的真为0,假为1. 单层if语句 if 条件:then                            if 条件 命令                或               then 命令 fi                                         …
逻辑控制 if 语法:注意空格 a=1b=2if [ $a == $b ]then    echo "a==b"elif [ $a -gt $b ]then    echo "a>b"elif [ $a -lt $b ]then    echo "a<b"else    echo "a!=b"fi…