十.Linux博客-2016年8月12日变量、算术表达式、测试

格式说明:

操作

概念

命令

说明及举例


十.变量、算术表达式、测试


bash -n +脚本 检查语法错误

.bash_profile 配置文件
PATH=$PATH:$HOME/bin:. 加.方便但不安全

unset name 删变量name

小驼峰 第一个单词字母小写,以后单词首字母大写
大驼峰 每一个单词首字母都大写

set 查看所有变量和函数

本地变量

name=meng

环境变量

export name=meng 
或者用之前 在本地变量前面加export

export 显示所有环境变量
env 显示所有环境变量

只读和位置变量

readonly name=meng 
declare -r name=meng

$* 接收的参数是合并之后的一个参数
$@ 接收的参数是原本的参数
以上两种用法只有被双引号包起来的时候才会有差异

算术表达式

let var=算术表达式
var=$[算数表达式]
$[EANDOM%50] 50内随机数0-49
$[EANDOM%50+1] 50内随机数1-50
let a++
let a--

逻辑运算

&& 短路与
|| 短路或
^ 亦或 俩结果不同才为真

退出状态

$? 判断上一命令执行结果,0为真

十.Linux博客-2016年8月12日变量、算术表达式、测试ping IP,1秒返回结果,如果通了,打印…,r如果不通,打印。。。

条件测试

[[ -n $A ]] 判断变量是否是非0
[[ $numa -eq $numb]]比较数字是否相等

十.Linux博客-2016年8月12日变量、算术表达式、测试 ————————————–

十.Linux博客-2016年8月12日变量、算术表达式、测试

字符串测试

十.Linux博客-2016年8月12日变量、算术表达式、测试

存在性测试

test -a file
test -e file

存在性及类别测试

[ -L /]

十.Linux博客-2016年8月12日变量、算术表达式、测试

文件权限测试

[ -r /etc/issue ]

十.Linux博客-2016年8月12日变量、算术表达式、测试

文件特殊权限测试

[ -g /usr/bin/passwd ]

十.Linux博客-2016年8月12日变量、算术表达式、测试

文件大小测试

[ -s f1 ]

文件是否打开

[ -t f1 ]

十.Linux博客-2016年8月12日变量、算术表达式、测试

read

/#!/bin/bash
判断IP是否符合
read -p "请输入IP:" ip
ip1=echo $ip|cut -d. -f1
ip2=echo $ip|cut -d. -f2
ip3=echo $ip|cut -d. -f3
ip4=echo $ip|cut -d. -f4
[[ $ip1 =~ [0-255] ]]&&[[ $ip2 =~ [0-255] ]]&&[[ $ip3 =~ [0-255] ]]&&[[ $ip4 =~ [0-255] ]] && echo 符合 || echo 不符合

原创文章,作者:自己泡面,如若转载,请注明出处:http://www.178linux.com/39197

(0)
自己泡面自己泡面
上一篇 2016-08-24 10:13
下一篇 2016-08-24 10:13

相关推荐

  • Linux发行版、发行版联系与区别

    参考这篇文章<2016年最佳Linux发行版排行榜> http://mt.sohu.com/20160128/n436204298.shtml #1 最好的回归发行版:OpenSUSE OpenSUSE背后的SUSE公司是最古老的Linux企业,成立于Linus Torvalds放出Linux的一年之后。它其实早于Red Hat诞生,同时也是社区…

    Linux干货 2016-08-15
  • CentOS6+ LAMP+ wordpress 搭建个人博客站

        每个IT工程师都期待拥有一个自己的博客站,本文讲述在CentOS 6系统LAMP环境下使用WordPress框架构建个人博客站的详细过程。     —-构建LAMP环境—- 1,安装apache,mysql php yum install -y httpd mysql…

    2017-07-11
  • 2016-08-18作业

    斐波那契数列 fibonacciSequenceFun.sh #!/bin/bash function fibonacci_sequence {   if [ $1 -eq 0 ]; then     echo 0      elif [ $1 -eq 1 ]; then    …

    Linux干货 2016-09-19
  • 网卡别名的设置

    网卡别名的设置 设备网卡别名对虚拟主机的作用 可以将多个IP地址绑定到一个NIC上 eth0:1 eth0:2 eth0:3 ifconfig命令: 使用ipconfig命令来设置网卡别名 ifconfigeth0:0 192.168.1.100/24 up 使用ip命令来设置网卡别名 ipaddradd 172.16.1.2/…

    Linux干货 2016-09-06
  • keepalived+nginx

    keepalived可以认为是VRRP协议在Linux上的实现,主要有三个模块,分别是core、check和vrrp。core模块为keepalived的核心,负责主进程的启动、维护以及全局配置文件的加载和解析。check负责健康检查,包括常见的各种检查方式。vrrp模块是来实现VRRP协议的。本文基于如下的拓扑图: 配置keepalived+nginx的方…

    Linux干货 2016-11-04
  • Linux基础小模块

    1.基础知识小块:shell 由shell程序的自带命令:即为内置命令(builtin) 独立的可执行程序文件、文件名 :即为外部命令  [root@localhost~]#ls      ~用户当前所在目录  #:命令提示符(管理员帐号root)  $:普通用户   &nbsp…

    Linux干货 2016-08-10