十.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进程及作业管理

    process 运行中的程序的一个副本,是被载入内存的一个指令集合 进程ID(Process ID,PID)号码被用来标记各个进程 UID、GID、和SELinux语境决定对文件系统的存取和访问权限, 通常从执行进程的用户来继承 存在生命周期 task struct:Linux内核存储进程信息的数据结构格式 task list:…

    Linux干货 2016-09-11
  • Linux中的包管理

    1. RPM介绍 rpm是linux中的包管理软件,通过rpm用户可以对rpm包进行查询、安装、卸载、升级和校验等操作。 1.1 查询 查询 -q:可以查看某个包是否已经安装 -qa:查看系统已经安装的所有包 -qi:查询某个安装包的详细情况 -ql:查询安装某个包之后会生成哪些文件 -qc:查询某个软件的配置文件 -qd:查询某个软件的所有文档 &#821…

    Linux干货 2017-04-17
  • 第二周博客作业

    1.Linux上的文件管理类命令都有那些,其常用的使用方法及其相关示例演示。
    2.Bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。
    3.请使用命令行展开功能来完成以下的练习。
    4.文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
    5.如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?
    6.显示/var目录下所有以1开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其他字符)的文件或目录。
    7.显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
    8.显示/etc目录下,以非字母开头,后面跟了一个字母以及其他任意长度任意字符的文件或目录。
    9.在/tmp目录下创建以tgile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22
    10.复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
    11.复制/etc目录下所有以.d结尾的文件或目录到/tmp/mytest2目录中。
    12.复制/etc目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。

    2018-03-22
  • vim编辑器

    vim编辑器三种模式转换 G跳到尾行 gg:跳到首行 H:跳到当前页的首行 L: 跳到当前页的尾行 M: 跳到当前而的中间行 dd: 删除光标所在的行 #dd:多行删除 yy:复制行 #yy: 复制多行  Y: 复制整行 cc:删除当前行并输入新内容 #cc:删除多行 C:删除当前光标到行尾,并切换成插入模式 修改配置文件 全局: /etc/vimrc 用…

    2017-08-05
  • KVM基本功能

    前言:本来想写出关于KVM的精品文章,然而学的时间不够长,理解也不够透彻。所以有关KVM的高级功能只能等下一次在写。本次只涉及到KVM的基础核心功能,平时经常会使用的功能.。 一、环境准备: 1、BIOS启用Virtualication。 2、在linux系统上查看系统是否支持硬件虚拟化。Intel系列CPU支持虚拟化标识为vmx,AMD系列CPU标识为sv…

    Linux干货 2015-10-27
  • 计算机组成、Linux命令基础

    计算机组成 控制器(Control):是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。 运算器(Datapath):运算器的功能是对数据进行各种算术运算和逻辑运算,即对数据进行加工处理。 存储器(Memory):存储器的功能是存储程序、数据和各种信号、命令等信息…

    Linux干货 2016-09-19