1.Shell特殊位置变量】的更多相关文章

在Linux shell 脚本中可能会用到一些命令行参数,常见如下: $0:脚本名称 $#:执行脚本时传入的参数个数,不包括脚本名称 $@:所有参数 $*:所有参数 $1...$9:第1个参数......第9个参数 $?:不属于位置变量,只是形式上比较相似:表示命令执行的退出状态(正常退出为0) 1.示例 #!/bin/bash echo echo "There are $# parameters" echo '"$*":' for var in "$*&…
$0    文件名及路径 $1,$2    参数1,参数2 , 也可以用${1}  和 ${2} 来表示 $#    传递给脚本或函数的参数个数 $$    当前Shell进程ID $?    判断上个命令的执行成功与否,0为成功. $@    传递脚本或函数的所有参数 $*    传递脚本或函数的所有参数 ${} 注: 1.$@和$*都是传递脚本或函数的所有参数.被双引号" "包含时,两者有区别如下 [root@web01 shell]# cat 007.sh #!/bin/bash…
I:知识整理:变量.运算符.流程控制.函数.计划任务 变量 系统变量:set:显示所有变量                env:环境变量 常用系统变量: path pwd lang home histsize ps1 ifs 变量赋值:x=test               echo $x               删除变量 unset x 自定义变量 定义变量: 变量名=变量值 变量名必须以字母或下划线开头,区分大小写 ip1=192.168.2.115 引用变量: $变量名 或 ${变…
1)变量类型 1)变量可分为俩类:环境变量(全局变量),和普通变量(局部变量), 环境变量也称为全局变量,可以在创建他们的Shell及其派生出来的任意子进程Shell中使用,环境变量又可以分为自定义环境变量和bash内置的环境变量,环境变量可以在命令行中设置和创建,用户退出命令行时这些变量值就会丢失,想要永久保存环境变量,可在用户家目录下的. bash_profile或. bashrc(非用户登录模式特有,如:SSH)文件中,或在/etc/profile文件中定义,这样每次用户登录时这些变量都将…
一.shell脚本介绍 (一)脚本案例及介绍: #!/bin/bash LOG_DIR=/var/log ROOT_UID=0 if ["$UID -ne "$ROOT_UID"] then echo "must be root run this script." exit 1 fi cd $ LOG_DIR || { echo "cannot change to necessary directory" exit 1 } cat /d…
@ 目录 10_Linux基础-SHELL入门1 一. 输入输出重定向 二. 2个特殊文件 三. here document 四. tee命令 五. 清空文件内容 六. SHELL入门 SHELL的变量 SHELL接收参数 数据类型 引号区别 字符串操作 数值的运算与比较 SHELL结构语句,循环和判断 /etc/init.d 服务的启动脚本 kill SHELL编程 if判断 [ ] && || [] .[[]]. (()) (判断方式) SHELL函数 定义 判断方式 [] [[]]…
对于linux shell 中的位置变量,我一直以来都是吐不出来又咽不下去,每次看到都不懂,不懂了就去百度google,看完了又忘,真是慢性咽炎啊.现在认真想想也是,其实自己一直以来都没有好好学习过,只是看了些速成的东西,匆匆忙忙地扫描,然后以光的速度忘掉了.好了,不淡这些了,希望和大家共勉. 第一次在Makefile中看到位置参数这东西比如$@,$^,$<等 ,shell中的位置参数也长这样子,但含义是不一样的.在shell中 $0 , 表明脚本的名字,比如执行./test/test.sh 那…
Shell 变量分为3部分,分别是用户自定义变量.位置变量和预定义变量. 一.   自定义变量 那么,什么是变量呢?简单的说,就是让某一个特定字符串代表不固定的内容,用户定义的变量是最普通的Shell变量.y=3a+2b,就是把3a+2b这个值赋予y.变量名是以字母或下线符打头的,可以从第二位开始加入数字,并且大小写字母意义不同.如dir与Dir是不同的变量.变量名的长度不受限制.比如:expert=Bill,就是将Bill赋值给expert,后来脚本读取变量$expert时,会取值为Bill…
环境变量 环境变量:每个Shell打开都可以获得到的变量. 我们知道通过export的方式打开可以让子进程读取父进程的变量的值,那怎么样才能让每一个进程都能读取到变量的值呢? 在这呢,系统有一些默认的配置文件,把变量嵌入到配置文件就可以了. 那么,系统已经自带了哪些环境变量呢?我们可以通过env这个命令,查看系统中内置的环节变量. [root@lincoding ~]# env HOSTNAME=lincoding SHELL=/bin/bash -- SSH_TTY=/dev/pts/0 US…
case语句使用于需要进行多重分支的应用情况 case分支判断结构 语法: case 变量名称 in      value1)          statement          statement          ;;      value2)          statement          statement          ;;      *)          statement          statement          ;;      esac case语…
Bash Shell中的特殊位置变量及其应用 众所周知bash shell中有许多特殊的位置变量,灵活使用它们可以更好地发挥Shell脚本的功用. 即位置变量:$1,$2,...来表示,用于让脚本在脚本代码中调用通过命令行传递给它的参数 特殊变量:$?, $0,$*,$@,$#, $$ ---------------- 具体解析 ----------------------------- $? : 用于检测上一条命令的返回码,0代表成功,1-255表示失败 $0 :  表示命令本身 $*  : …
Shell 变量分为3部分,分别是用户自定义变量.位置变量和预定义变量. 一.   自定义变量 那么,什么是变量呢?简单的说,就是让某一个特定字符串代表不固定的内容,用户定义的变量是最普通的Shell变量.y=3a+2b,就是把3a+2b这个值赋予y.变量名是以字母或下线符打头的,可以从第二位开始加入数字,并且大小写字母意义不同.如dir与Dir是不同的变量.变量名的长度不受限制.比如:expert=Bill,就是将Bill赋值给expert,后来脚本读取变量$expert时,会取值为Bill…
今天才发现原来位置变量也可以玩的这么爽!! 这是使用位置变量进行文件目录备份:#!/bin/bashDATE=`date +%F`  //日期以年月日输出tar czf $1.$DATE.tar.gz $1 > /dev/null 2>> /opt/$1.bak.log //打包$1变量包,将错误追加到日志中,tar打包会保留原目录,比较好if [ $? -eq 0 ]   返回值为0代表打包ok,不为0,则不okthen   #包 时间 打包ok 追加到日志        echo &…
通过位置变量创建Linux账户及密码 脚本内容 [root@VM_0_10_centos shellScript]# vi addUser.sh #!/bin/bash # 通过位置变量创建系统账户及密码 # $# 表示脚本后面接了多少个参数 $n 表示第几个参数 && 逻辑与 if [ $# -eq 0 -o $# -eq 1 ];then echo "usage: ./addUser.sh 添加的账户 设置账户密码" exit ; fi # $ 表示执行的脚本 $…
题记:来源与网络和自己工作中总结.有些脚本片段,函数经常使用. 1.判断登录用户 1.1脚本 [devtac@test_1 shell]$ vi check_user.sh #! /bin/sh echo "You are logged in as `whoami`"; if [ `whoami` != devtac ]; then echo "Must be logged in as devtac to run this script." exit fi echo…
shell实例手册 0 说明{ 手册制作: 雪松} 1 文件{        ls -rtl                 # 按时间倒叙列出所有目录和文件 ll -rt    touch file              # 创建空白文件    rm -rf 目录名           # 不提示删除非空目录(-r:递归删除 -f强制)    dos2unix                # windows文本转linux文本      unix2dos                #…
shell 是什么 ~ $ ls /bin/*sh /bin/bash /bin/csh /bin/ksh /bin/sh /bin/tcsh /bin/zsh 是什么 kernel shell 命令解释器,和 kernel 交互 命令语言.程序设计语言 特性 命令集 胶水语言 操作系统外壳接口 适合场景 自动化简单任务 快速.简单完成原型 劣势 移植性 grep --version wget--version 执行效率 组织性,结构性 不支持面向对象特性 shell 特性 wget uc.cn…
一.Shell变量的应用 1.Shell变量的种类     ·用户自定义变量:由用户自己定义.修改和使用     ·预定义变量:Bash预定义的特殊变量,不能直接修改     ·位置变量:通过命令行给程序传递执行参数 2.变量的赋值与引用     ·定义新的变量             变量名要以英文字母或下划线开头,区分大小写             格式:变量名=变量值    · 查看变量的值             格式:echo $变量名         echo  "my name i…
文章转自: http://www.cnblogs.com/maxupeng/archive/2011/07/02/2096551.html 一.test命令 test命令是shell内部命令,它计算作为其参数的表达式是真还是假. 如果表达式为真,则test返回0(注意与C语言0表示false不同),如果表达式为假,返回非0. shell提供了另外一个调用test命令的方式,就是用方括号[]来代替单词test. 调用test命令的格式为: test expr1 opr expr2 或是 [ exp…
Shell函数类似于Shell脚本,里面存放了一系列的指令,不过Shell的函数存在于内存,而不是硬盘文件,所以速度很快,另外,Shell还能对函数进行预处理,所以函数的启动比脚本更快. 1.函数定义 function 函数名() { 语句 [return] } 关键字function表示定义一个函数,可以省略,其后是函数名,有时函数名后可以跟一个括号,符号“{”表示函数执行命令的入口,该符号也可以在函数名那一行,“}”表示函数体的结束,两个大括号之间是函数体. 语句部分可以是任意的Shell命…
在一些复杂的Linux维护工作中,大量重复的输入和交互操作不但费时费力,容易出错.这时候就需要用到脚本. 编写脚本的好处:  批量的处理,自动化的完成维护,减轻管理员的负担. linux的shell脚本是一种特殊的应用程序,常见的shell解释器有很多种,使用不同的shell时期内部指令:cat /etc/shells [root@xiaolyu ~]# cat /etc/shells /bin/bash是大多数linux中默认的shell解释器.之后的所有脚本的编写都是bash脚本. 一.编写…
((i=$j+$k))    等价于 i=`expr $j + $k`((i=$j-$k))     等价于   i=`expr $j -$k`((i=$j*$k))     等价于   i=`expr $j \*$k`((i=$j/$k))     等价于   i=`expr $j /$k` Let expressions 执行一个或多个表达式.表达式中的变量前不必有$.如果表达式中包含了空格或其他特殊字符,则必须引起来. 例:let “I = I + 1” 或 let i=i+1 算术运算符…
1.项目中用到Linux的crontrab Linux下的定时执行主要是使用crontab文件中加入定制计划来执行,但是也不是非常复杂,基本上用过一遍就能记住了,关键是要记住/var/spool/cron这个目录.下面看一下具体的用法:    首先查看一下/etc/crontab文件:    $ cat /etc/crontab    SHELL=/bin/bash   PATH=/sbin:/bin:/usr/sbin:/usr/bin   MAILTO=root   HOME=/    #…
Shell函数类似于Shell脚本,里面存放了一系列的指令,不过Shell的函数存在于内存,而不是硬盘文件,所以速度很快,另外,Shell还能对函数进行预处理,所以函数的启动比脚本更快. 1.  函数定义 function 函数名() { 语句 [return] } 关键字function表示定义一个函数,可以省略,其后是函数名,有时函数名后可以跟一个括号, 符号“{”表示函数执行命令的入口,该符号也可以在函数名那一行,“}”表示函数体的结束,两个大括号之间是函数体. 语句部分可以是任意的She…
既然是变量,自然分变量名和变量值,在使用的时候一定要注意哪些地方需要用变量名,哪些地方需要用变量的值. 自定义变量 shell变量不需要声明,随用随定义,给变量赋值的时候要注意 shell是空格敏感的 使用{}确定变量的范围是个好习惯 $NEWENV =123 #等号前面有空格,不行 NEWENV: command not found $NEWENV= 123 #等号后面有空格,不行 123: command not found $NEWENV=123 #RIGHT $BRACE=123 $ec…
Shell高级编程视频教程-跟着老男孩一步步学习Shell高级编程实战视频教程 教程简介: 本教程共71节,主要介绍了shell的相关知识教程,如shell编程需要的基础知识储备.shell脚本概念介绍及第一个脚本案例.shell脚本基础知识-作用地位-比其他语言优势.建立一个规范的shell脚本.执行shell脚本的多种方法及重要区别精讲.shell脚本开发的9点基本规范和习惯.shell的变量-变量类型-全局变量相关知识讲解.shell的特殊变量-难点理论与实战剖析.批量修改文件名及扩展名多…
linux下的shell运算(加.减.乘.除) 标签: linuxshell运算加减乘除 2014-03-12 16:25 15127人阅读 评论(0) 收藏 举报 分类: linux(17) ((i=$j+$k)) 等价于 i=`expr $j + $k` ((i=$j-$k)) 等价于 i=`expr $j -$k` ((i=$j*$k)) 等价于 i=`expr $j \*$k` ((i=$j/$k)) 等价于 i=`expr $j /$k` Let expressions 执行一个或多个…
6.shell函数    6.1.定义函数        简介:            shell允许将一组命令集或语句形成一个可用块,这些块成为shell函数        定义函数的格式            方法一                函数名()                {                    命令1                    ......                }            方法二                funct…
2.变量和运算符 2.1.变量的类型 本地变量:环境变量:变量替换(显示变量):位置变量:标准变量:特殊变量: 2.2.本地变量 本地变量在用户现在的shell生命周期的脚本中使用 在命令行, LOCALTEST="test" 设置本地变量,$ echo $LOCALTEST 显示本地变量 set 命令可以查看这个shell的生命周期有哪些本地变量 readonly LOCALTEST ,就可以将LOCALTEST设置成只读的本地变量,不能再对其进行赋值操作,此时若执行如 LOCALT…
#得到绝对路径 DIR=$(cd `dirname $0`;pwd) $DIR/file.txt #去掉#注释 egrep -v "(#|^$)" /etc/zabbix/zabbix_server.conf   基本语法: export 变量=变量值    声明全局变量 unset $变量名  清空变量 read  -p "真的卸载?(yes|no)"  flag 使用 read [-p "提示信息" ] 变量名 声明交互变量 常见环境变量$U…