linux自学_shell变量篇

引言

3000块的工资与30000块的工资,差距在于后者有生活经验的积累,技术知识的总结也是一种生活经验.

1)shell变量是什么?

变量就是一个简单的字符去代替了复杂的字符

2)shell变量有几种?

环境变量和局部变量

3)变量如何定义和引用?

变量名字=变量内容   # 内容可以是路径,命令,字符串,数字等

变量的引用 $变量名  # 如 cheng=30

# echo $cheng          #结果就是30

4)特殊变量(系统提前已经规定好的字符代表固定的内容)

$0      shell脚本的名字

$n      shell脚本的第n个参数

$*  [email protected]  shell脚本的所有参数(稍有区别自己可以查资料分析)

$#      shell脚本的参数个数

不常用的特殊变量

$!   最后一个后台运行的脚本的进程号

$$   脚本的进程号

$?      shell脚本中上一个命令或脚本的返回值(返回值是什么?可以当成不存在,只是排错的时候才会使用)

$_   脚本的最后一个参数

5) 变量的子串(有时候我们需要得到变量中的一部分内容,此时用变量子串是计算速度最快的方式)

cheng=ruofei

echo ${#cheng}     #计算变量的字符个数

6

echo ${cheng:2}    #显示第2个字符以后的字符

eng

6) 变量的计算

变量的内容是数字的时候,就会涉及变量的数值计算,我们用(())才会自动计算

cheng=30

zhang=cheng+1

echo $zhang

cheng+1

zhang=((cheng+1))

echo $zhang

31

时间: 2024-11-08 21:39:09

linux自学_shell变量篇的相关文章

linux自学_shell理论基础

1)此文献给坚持自学的人 我从网管转变成linux运维工程师,总结了一些经验.把他写出来希望能帮到更多的人. 2)本篇介绍linux中shell编程的基础理论 a shell脚本是什么? shell是linux系统的一个壳,用户通过它操作系统实现一些功能. shell脚本就是由变量,命令,控制语句组成的一个文件.通过shell执行它实现某种效果. b 如何执行它呢? linux中有三种形式: /bin/sh 脚本名字 全路径/脚本名字   #此时脚本需要有执行权限 . 全路径/脚本名字  #注意

linux自学_shell脚本case详解

case都可以用if替换,唯一的区别是当变量有固定几个值的时候,语法比较整齐. 举例 企业常用启动一些程序的脚本 例一 : vi  apache.sh #!/bin/sh  case $1 in          start | begin)          /etc/init.d/httpd start         ;;          stop | end)              /etc/init.d/httpd stop         ;;          *)     

linux自学_shell脚本for详解

for 循环 一般把变量都轮询一遍去执行一些任务 如开机启动程序精简 for cheng in `chkconfig --list|grep 3:on |awk '{print $1}'` do chkconfig $cheng off done for cheng in ssh crond do chkconfig $cheng on done

linux自学_shell脚本if详解

1)if条件控制语句的作用? shell脚本也是一个弱脚本语言,也支持if条件控制语句. 2)if的结构语法 单分支 if then fi 双分支 if then else fi 多分支 if then elif then else fi 3)应用范围 判断企业服务是否正常运转 举例 判断lftp是否安装若没安装则安装 vi install_lftp.sh #!/bin/bash rpm -qa |grep lftp 1>/dev/null if [ $? -ne 0 ];then   ##若上

Linux常用命令-入门篇(一)

1    For循环 语法:begin for i in reverse 1..10 loop insert into users values(i,'奥巴马'): end loop: end; 注意:循环变量 i 是隐含增加的,所以无法看到 2    goto语句 goto 语句用于跳转到特定的位置去执行语句.由于goto语句会减少程序的可读性,所以一般情况下 不建议使用goto语句 3    null语句 null语句不会执行任何操作,但是可以增加程序的可读性 4    创建返回值是一个结果

linux自学(九)之开始centos学习,安装数据库MariaDB

上一篇:linux自学(八)之开始centos学习,安装tomcat 数据库我们不安装mysql,我网上看了好多资料发现mysql安装比较麻烦,我们这里安装同一个父亲的产品MariaDB.驱动,端口等等操作都是跟mysql一样的,因为是同一个爹开发的,而且安装很方便,那就使用这个吧. 安装,当然也是在/usr/local目录下创建MariaDB目录,之后进入此目录进行安装 yum install -y mariadb-server 启动 systemctl start mariadb 设置开机启

linux自学(三)之开启虚拟机

上一篇:linux自学(二)之centos7镜像安装 前面都已经铺垫好了,下面就是开始安装镜像了,真正的开启一台linux机器. 点击开启此虚拟机,如图: 之后就是等待了,然后就是开始配置,首先如下图: 上面的配置主要就是一个分区,这里我截图没有截到,你下滑就可以看到了.我使用的是自动配置.如图: 另外还有一个是网络配置,我这里没有打开,后边我会手动配置,你也可以在这里打开.如下图: 最后就是安装了,这个过程很漫长 安装过程中可以设置root账号的密码,也可以创建其他账号.如图: 我这里就只设置

linux自学(四)之开始centos学习,网络配置

上一篇:linux自学(三)之开启虚拟机 安装好镜像之后,重启之后需要登录,我这里直接是root账号直接登录的,注意:输入密码的时候不显示. 之后输入ifconfig最常用的命令来查看网卡信息,出现command not found,如图: 原因分析: 在虚拟机中以最小化方式安装centos7,之后无法上网,因为centos7默认网卡未激活. 激活网卡: 首先查询我们现在的网卡名字 cd /etc/sysconfig/network-scripts 进入network-scripts目录下,输入

linux自学(六)之开始centos学习,更换yum源

上一篇:linux自学(五)之开始centos学习,Xshell远程连接 1. 备份原来的yum源 cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 2. 下载阿里云的CentOS-Base.repo 到/etc/yum.repos.d/ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Cent