一、变量

1.系统变量

echo $PATH #环境变量

echo $USER #当前用户

echo  $HOME #

2.自定义变量

  • 变量名称一般用大写
  • 等号两侧不能有空格
  • 静态变量不能被unset
A=100 #定义变量,

unset A #销毁变量

readonly B  #定义静态变量,

echo $A  #使用变量$

指令赋值给变量

a1=$(ls -a)  #使用$(),这个指令有的linux不兼容
a2=`ls -a` #或者使用 `` echo $a1
echo $a2

3.位置参数变量

#!/bin/bash
echo "输入参数个数共:$# 个"
echo "全部参数1是:$0 , 参数2是:$1"
echo "输入参数为:$@"
echo "输入参数为:$*"

4.预定义变量

$$ #获取当前进程号
$! # 后台运行的最后一个进程号
$? #返回最后一次命令的状态,0表示成功,

二、运算符

$()

echo $(((2+3)*4))

$[]    ** 两个()等于一个[]

echo $[(2+3)*4]

expr

用expr时符号两边必须要有空格

echo `expr 2 + 3`

乘号 

需要加\

echo `expr 2 \* 3`

比较运算符

数字的比较:
-eq 相等(equal)
-ne 不等(not equal)
-gt 大于(greater than)
-lt 小于(less than)
-ge 大于等于 (greater than or equal)
-le 小于等于 (less than or equal) 字符串的比较:
[ $str1 = $str2 ] 等于
[ $str1 != $str2 ] 不等于
[ -z $str ] 空字符串返回true
[ -n $str ] 或者 [ $str ] 非空字符串返回true

文件

-r file     用户可读为真
-w file     用户可写为真
-x file     用户可执行为真
-f file     文件为正规文件为真
-d file     文件为目录为真
-c file     文件为字符特殊文件为真
-b file     文件为块特殊文件为真
-s file     文件大小非0时为真
-t file     当文件描述符(默认为1)指定的设备为终端时为真

三、判断

 1 if

#!/bin/bash

if [ $1 -gt 15  ]
then
echo "大于"
elif [ $1 -lt 15 ]
then
echo "小于"
else
echo "等于"
fi

 2 case

#!/bin/bash

case $ in
"")
echo "周一"
;;
"")
echo "周二"
;;
*)
echo "other"
esac

四、循环

1. for循环

#!/bin/bash

for i in "$*"
do
echo "$i"
done echo "*********************" for j in "$@"
do
echo "$j"
done

2.for循环

#!/bin/bash

for (( i= ; i<$ ; i++))
do
echo "print $i"
done

3.while 

#!/bin/bash

while [ "$1" ]
do
echo "$1"
done

五、函数

1.系统函数

(1)basename 获取文件全路径下的文件名

[root@VM_0_2_centos ~]# basename /root/test.txt
test.txt

(2)dirname 获取文件全路径的路径部分

[root@VM_0_2_centos ~]# dirname /root/test.txt
/root

2.自定义函数

#!/bin/bash
getSum(){
SUM=$[$n1+$n2]
echo "求和:$SUM"
} read -p "输入参数1:" n1
read -p "输入参数2:" n2 getSum $n1 $n2

六、其他

1读取控制行

#!/bin/bash

read -p "请输入:" NUM1
echo "输出: $NUM1"

(5)centos图形界面安装的更多相关文章

  1. 【CentOS】在Centos7 下无图形界面安装 Oracle11g

    目标 - 在虚拟机CentOS7中无图形界面安装Oracle11G R2版本 ① 系统要求以及准备 1. 物理内存不小于1G: 查看方式: # grep MemTotal /proc/meminfo ...

  2. CentOS5.5 正式开始安装 Oracle 11g r2(图形界面安装)

    一.下载oracle 官方网站, 可以下载最新版本 Oracle Database 11g Release http://www.oracle.com/index.html CentOS5. i386 ...

  3. 【转】CentOS图形界面的开启与关闭

    源自:http://blog.sina.com.cn/s/blog_4a1f76860100zpus.html 安装CentOS 5.6系统的时候我没有先装任何组件,现在用X Window,需要再安装 ...

  4. [vt][xen]xenserver初始安装增加第二块硬盘&xen图形界面安装vm&设置xen里vm开机启动

    为XenServer挂载/增加第二块硬盘的方法 注意: xen6.x和xen7.x vm导出导入是不兼容的.这点有点蛋疼 新买机器后安装xenserver(一般都买刻录机+dvd来刻录xen官网的io ...

  5. RHEL 无图形界面安装oracle 11gr2

    RHEL7.3  无图形界面安装oracle 11gr2  使用纯命令安装方式.提供RHEL全量系统镜像.   1.oracle官方下载地址:https://www.oracle.com/techne ...

  6. 编译安装常用包+阿里镜像源-常用资源-系统-下载-科莱软件下载-docker仓库包-安全圈-杏雨梨云-图形界面安装-docker私有双仓库-阿里源报错处理-centos7目录大小

    yum install apr-util apr-util-devel apr apr-devel pcre pcre-devel zlib zlib-devel openssl openssl-de ...

  7. Oracle 12cR1 RAC 在VMware Workstation上安装(中)—图形界面安装

    Oracle 12cR1 RAC 在VMware Workstation上安装(中)—图形界面安装 1.1  图形界面安装 1.1.1  安装GRID 安装日志:/u01/app/oraInvento ...

  8. debian图形界面安装安装GNOME中文桌面环境_刀光剑影_新浪博客 - Google Chrome

    debian图形界面安装安装GNOME中文桌面环境 (2012-06-12 16:47:41) 转载▼ 标签:  杂谈 分类: linux 安装GNOME中文桌面环境 安装基本的X系统 # apt-g ...

  9. Oracle 12cR1 RAC集群安装(二)--使用图形界面安装

    Oracle 12cR1 RAC集群安装文档:Oracle 12cR1 RAC集群安装(一)--环境准备Oracle 12cR1 RAC集群安装(二)--使用图形界面安装Oracle 12cR1 RA ...

随机推荐

  1. 源码级强力分析hadoop的RPC机制

    分析对象: hadoop版本:hadoop 0.20.203.0 必备技术点: 1. 动态代理(参考 :http://weixiaolu.iteye.com/blog/1477774 )2. Java ...

  2. python实现分布式进程

    今天用python实现分布式,基于python2.7,注意:在linux下执行测试通过,在windows测试失败.# -*- coding: utf-8 -*-__author__ = 'dell'i ...

  3. Android 服务入门

    前言:硬着头皮把数据库SQLite看完了,接下来就是android服务了,因为自己本身就是菜鸟,所以呢,也只是做做笔记,技术上的东西就别指望我了. 1.什么是服务呢?举个例子,百度地图,美团外卖,OF ...

  4. C# datagridview列绑定类中类的属性

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://www.cnblogs.com/linghaoxinpian/p/5906374. ...

  5. python上数据存储 .h5格式或者h5py

    最近在做城市计算的项目,数据文件是以.h5的格式存储的,总结下其用法和特点 来自百度百科的简介: HDF(Hierarchical Data Format),可以存储不同类型的图像和数码数据的文件格式 ...

  6. angular用$sce服务来过滤HTML标签

    angular js的强大之处之一就是他的数据双向绑定这一牛B功能,我们会常常用到的两个东西就是ng-bind和针对form的ng-model.但在我们的项目当中会遇到这样的情况,后台返回的数据中带有 ...

  7. Excel动画教程50例(一)

    Excel动画教程50例(一) 1.自动筛选 2.在Excel中字符替换 3.在Excel中冻结行列标题 4.在Excel中为导入外部数据 5.在Excel中行列快速转换 6.共享Excel工作簿 7 ...

  8. IOS开发---菜鸟学习之路--(三)-数据解析

    第三篇 上一篇我们讲了如何通过NSURL类来获取数据, 这一章我们来讲下对于获取过来的数据如何解析. 好了直接进入正文吧. 正文: 上一篇讲了 我们获取过来的数据格式是JSON格式的 大家可以搜下对应 ...

  9. IOS开发---菜鸟学习之路--(一)

    PS(废话): 看了那么多的博客文章,发现大部分人都一直在强调写技术博客的重要性,索性自己也耐着性子写写看吧. 写博客的重要性之类的说明,我就不做复制黏贴的工作了.因为自己没有写过多少,所也不清楚是不 ...

  10. 【Best Time to Buy and Sell Stock II】cpp

    题目: Say you have an array for which the ith element is the price of a given stock on day i. Design a ...