随笔分类 - 【10】shell编程
摘要:输入输出重定向是通过修改文件指针实现的 重定向: 输入和输出 > 覆盖 >> 追加 fd>file fd与>之间不能有空格 fd表示为文件描述符,不写时默认为1 输出重定向 ls one>>log.txt 2>&1 #错误信息和正确信息保存在一个t文件 ls -l>>log.txt 2>>err.l
阅读全文
摘要:函数定义 与 调用 #函数定义 #标准 function fun1() { echo "one" } #省略括号 function fun2 { echo "two" } #省略关键字 fun3() { echo "$@" } #函数调用 #无参数 fun1 fun2 #有参数 fun3 10 30
阅读全文
摘要:case in 语句 printf "input number:" read num case $num in 1) echo "one" ;; 2) echo "two" ;; *) echo "error" ;; esac (1) case、in 和 esac 都是 Shell 关键字,num
阅读全文
摘要:==、>、< 在大部分编程语言中都用来比较数字,而在 Shell 中,它们只能用来比较字符串,不能比较数字其次,不管是比较数字还是字符串,Shell 都不支持 >= 和 <= 运算符, 那么在shell中,数值和字符串的比较是怎样的? (1)数值比较 -gt : > -lt : < -ge : >=
阅读全文
摘要:(()) #(()) 只能进行整数运算 #普通用法 a=$((10+20)) echo $a #用做表达式 b=30 if (($a==$b));then echo "是的" else echo "不是" fi #逗号分隔 ((a=2+3, b=8+80)) echo $a $b echo $((a
阅读全文
摘要:Shell 内建命令,就是由 Bash 自身提供的命令,而不是文件系统中的某个可执行文件。 还记得系统变量 $PATH 吗?$PATH 变量包含的目录中几乎聚集了系统中绝大多数的可执行命令,它们都是外部命令。 通常来说,内建命令会比外部命令执行得更快,执行外部命令时不但会触发磁盘 I/O, 还需要
阅读全文
摘要:数组用法 (1)从0开始 (2)shell只支持一维数组(3) 数组内元素类型可以不同 (4)长度不固定 1 #!/bin/bash 2 3 #数组定义: arr=(1 2 3 4 5) 4 arr[1]=99 5 #给指定元素赋值 6 arr=([2]=10 [4]=2 [5]=34) 7 8 #
阅读全文
摘要:(1)基本用法 1) 由单引号' '包围的字符串: 任何字符都会原样输出,在其中使用变量是无效的。 字符串中不能出现单引号,即使对单引号进行转义也不行。 2) 由双引号" "包围的字符串: 如果其中包含了某个变量,那么该变量会被解析(得到该变量的值),而不是原样输出。 字符串中可以出现双引号,只要它
阅读全文
摘要:(1)命令替换 (2)位置参数 (3)特殊参数
阅读全文
摘要:Shell 变量的作用域可以分为三种: 有的变量只能在函数内部使用,这叫做局部变量(local variable); 有的变量可以在当前 Shell 进程中使用,这叫做全局变量(global variable); 而有的变量还可以在子进程中使用,这叫做环境变量(environment variabl
阅读全文
摘要:(1)bash shell中,每个变量的值都是以 字符串 的形式存储; (2)= 的周围不能有空格; (3)$ 在shell中可作为取变量运算符; (4)$$ 输出当前进程的PID; (1){} 识别变量的边界;(2)将命令的结果赋值给变量(3)readonly只读变量(4)unset删除变量 参考
阅读全文
摘要:shell命令与linux命令区别? shell本身就是linux命令,简单的说shell程序就是一个包含若干行shell或者linux命令的文件 Linux命令的执行必须依赖于Shell命令解释器 shell命令的格式: command [选项] [参数] 如 cd dirfile、ls -l s
阅读全文

浙公网安备 33010602011771号