GitHub中文社区

bash命令提示符

命令提示符用户进入 Bash 以后,Bash 会显示一个命令提示符,用来提示用户在该位置后面输入命令。环境变量 PS1命令提示符通常是美元符号$,对于根用户则是井号#。这个符号是环境变量PS1决定的,执行下面的命令,可以看到当前命令提示符的定义。$ echo $PS1Bash 允许用户自定义命令提示

Bash 启动环境

Bash 启动环境Session用户每次使用 Shell,都会开启一个与 Shell 的 Session(对话)。Session 有两种类型:登录 Session 和非登录 Session,也可以叫做 login shell 和 non-login shell。登录 Session登录 Sessio

bash mktemp 命令

mktemp 命令,trap 命令Bash 脚本有时需要创建临时文件或临时目录。常见的做法是,在/tmp目录里面创建文件或目录,这样做有很多弊端,使用mktemp命令是最安全的做法。临时文件的安全问题直接创建临时文件,尤其在/tmp目录里面,往往会导致安全问题。首先,/tmp目录是所有人可读写的,任

bash脚本除错

脚本除错本章介绍如何对 Shell 脚本除错。常见错误编写 Shell 脚本的时候,一定要考虑到命令失败的情况,否则很容易出错。#! /bin/bashdir_name=/path/not/existcd $dir_namerm *上面脚本中,如果目录$dir_name不存在,cd $dir_nam

bash set 命令

set 命令,shopt 命令set命令是 Bash 脚本的重要环节,却常常被忽视,导致脚本的安全性和可维护性出问题。本章介绍set的基本用法,帮助你写出更安全的 Bash 脚本。简介我们知道,Bash 执行脚本时,会创建一个子 Shell。$ bash script.sh上面代码中,script.

bash数组

数组数组(array)是一个包含多个值的变量。成员的编号从0开始,数量没有上限,也没有要求成员被连续索引。创建数组数组可以采用逐个赋值的方法创建。ARRAY[INDEX]=value上面语法中,ARRAY是数组的名字,可以是任意合法的变量名。INDEX是一个大于或等于零的整数,也可以是算术表达式。注

Bash 函数

Bash 函数本章介绍 Bash 函数的用法。简介函数(function)是可以重复使用的代码片段,有利于代码的复用。它与别名(alias)的区别是,别名只适合封装简单的单个命令,函数则可以封装复杂的多行命令。函数总是在当前 Shell 执行,这是跟脚本的一个重大区别,Bash 会新建一个子 She

bash 循环

循环Bash 提供三种循环语法for、while和until。while 循环while循环有一个判断条件,只要符合条件,就不断循环执行指定的语句。while condition; do commandsdone上面代码中,只要满足条件condition,就会执行命令commands。然后,再次判

bash条件判断

条件判断本章介绍 Bash 脚本的条件判断语法。if 结构if是最常用的条件判断结构,只有符合给定条件时,才会执行指定的命令。它的语法如下。if commands; then commands[elif commands; then commands...][else commands]fi这

read 命令

read 命令用法有时,脚本需要在执行过程中,由用户提供一部分数据,这时可以使用read命令。它将用户的输入存入一个变量,方便后面的代码使用。用户按下回车键,就表示输入结束。read命令的格式如下。read [-options] [variable...]上面语法中,options是参数选项,var