Shell脚本变量与判断】的更多相关文章

变量 环境变量 局部变量 declare 定义变量类型 本地变量 local 在函数中使用 变量类型: 数值型: 1.整形 2.浮点型 3.布尔型 0 1 (真 假) (true false) 字符串: 1.普通字符和字符串 2.数组 编译语言的分类: 强类型语言: -- 数值必须被定义,才能进行处理或运算 弱类型语言: -- 编程语言可以自动识别变量类型[多态] 传参: $? 上一条命令的执行状态 0正确 1-255错误 $1 $2 ${10} 命令后面传入的脚本数据,以空格为分割符 $# 统…
转自:http://m.jb51.net/article/56553.htm 这篇文章主要介绍了Shell脚本IF条件判断和判断条件总结,本文先是给出了IF条件判断的语法,然后给出了常用的判断条件总结,需要的朋友可以参考下 前言:      无论什么编程语言都离不开条件判断.SHELL也不例外.       if list then           do something here       elif list then           do another thing here  …
既然是变量,自然分变量名和变量值,在使用的时候一定要注意哪些地方需要用变量名,哪些地方需要用变量的值. 自定义变量 shell变量不需要声明,随用随定义,给变量赋值的时候要注意 shell是空格敏感的 使用{}确定变量的范围是个好习惯 $NEWENV =123 #等号前面有空格,不行 NEWENV: command not found $NEWENV= 123 #等号后面有空格,不行 123: command not found $NEWENV=123 #RIGHT $BRACE=123 $ec…
bash&shell系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 变量存在于内存中.假设变量str,设置或修改变量属性时,不带$号,只有引用变量的值时才使用$号.也就是说在内存中,标记变量的变量名称是str,而不是$str. 1.4.1 环境变量 环境变量就是运行在"环境"上下文的,在这个上下文都可以引用.例如,常见的cd.ls等命令严格来说应该使用绝对路径如/bin/ls来执行,由于/bin目录加入到了PATH环…
Linux中的变量有环境变量和用户自定义变量,关于环境变量,可以查看这篇博客:linux环境变量 本文主要针对的是用户在shell脚本中定义的变量,但是环境变量也可以在shell脚本中使用. 普通变量 注意事项: 变量名以英文字母或者下划线开头,但是不能以数字开头 变量名区分大小写 变量名与等号之间,等号与变量值之间不要有空格 只有在使用变量的值的时候,才在变量名之前加$,其他情况,比如删除.赋值.循环迭代都不用加$ 如果一行只有一条命令,则每一行不用以分号结尾,每一条命令以换行分隔 如果一行有…
环境变量 环境变量就是运行在"环境"上下文的,在这个上下文都可以引用.例如,常见的cd.ls等命令严格来说应该使用绝对路径如/bin/ls来执行,由于/bin目录加入到了PATH环境变量中,系统自己会去寻找PATH下的路径是否有该命令. 环境变量常用大写字母表示.常见的环境变量有HOSTNAME.SHELL.HISTSIZE.USER.PATH.PWD.LANG.HOME.LOGNAME.分别表示当前主机名.SHELL的路径即bash的类型.history保存多少记录.当前用户名.自动…
本文转录:https://blog.csdn.net/kejiaming/article/details/51859503 参数说明: $# 是传给脚本的参数个数 $ 是脚本本身的名字 $ 是传递给该shell脚本的第一个参数 ($n 这个程式的第n个参数值,n=..) $ 是传递给该shell脚本的第二个参数 $@ 是传给脚本的所有参数的列表 $* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个 $$ 是脚本运行的当前进程ID号 $? 是显示最后命令的退出状态,0表示…
目录 判断用户参数 流程控制语句 一.判断用户参数 1.1 文件判断参数 PS:$?代表上一个命令的返回值,为0表示正确执行,非0表示错误执行.详情可参考我另一篇博客:https://www.cnblogs.com/HeiDi-BoKe/p/11635473.html 补充:逻辑语句有三个(与:&&,或:||,非:!) 实例: 1.2 比较运算符 实例: # FreeMem=`free -m | grep Mem: | awk '{print $4}` # echo $FreeMem 1.…
写了个很简单的脚本,执行结果却很奇怪.   1 #!/bin/bash PATH=$HOME/vlc_transplant4 rm -f $PATH/vlc ln -s $PATH/bin/vlc-static $PATH/vlc 执行结果: zlf@ubuntu:~/vlc_transplant4$ ./update.sh ./update.: rm: 未找到命令 ./update.: ln: 未找到命令 原因是自己在脚本中定义的PATH变量把系统变量PATH给替代了,脚本原本根据系统变量PA…
题目 写一个脚本 1. 传递一个参数给脚本,此参数为用户名: 2. 如果用户存在,则执行如下任务 * 如果用户的id号小于500,显示其为管理员或系统用户: * 否则,显示其为普通用户: 3. 如果用户不存在,则添加之: 解答 #!/bin/bash username=$1 if [ "$username" = "" ]; then echo "please input a username" exit 1 fi if id $username…