Linux回顾笔记

1.let命令
注意:和双小括号 (( )) 一样,let 命令也只能进行整数运算,不能对小数(浮点数)或者字符串进行运算。

Shell let 命令的语法格式为:

let 表达式
或者

let "表达式"
或者

let '表达式'
它们都等价于((表达式))

2.$?的含义
1)$?获取上一个命令的退出状态
2) $? 获取函数的返回值
编写下面的代码,并保存为 test.sh:

    #!/bin/bash
    #得到两个数相加的和
    function add(){
        return `expr $1 + $2`
    }
    add 23 50  #调用函数
    echo $?  #获取函数返回值

运行结果:
73
3.case命令语法格式
case expression in
    pattern1)
        statement1
        ;;
    pattern2)
        statement2
        ;;
    pattern3)
        statement3
        ;;
    ……
    *)
        statementn
esac

4.循环

1).while 循环是 Shell 脚本中最简单的一种循环,当条件满足时,while 重复地执行一组语句,当条件不满足时,就退出 while 循环。

Shell while 循环的用法如下:

while condition
do
    statements
done
condition表示判断条件,statements表示要执行的语句(可以只有一条,也可以有多条)

2)unti 循环和 while 循环恰好相反,当判断条件不成立时才进行循环,一旦判断条件成立,就终止循环。

until 的使用场景很少,一般使用 while 即可。

Shell until 循环的用法如下:

until condition
do
    statements
done
condition表示判断条件,statements表示要执行的语句(可以只有一条,也可以有多条)

3)select in 循环用来增强交互性,它可以显示出带编号的菜单,用户输入不同的编号就可以选择不同的菜单,并执行不同的功能。

select in 是 Shell 独有的一种循环,非常适合终端(Terminal)这样的交互场景,C语言、C++、Java、Python、C# 等其它编程语言中是没有的。

Shell select in 循环的用法如下:

select variable in value_list
do
    statements
done
variable 表示变量,value_list 表示取值列表,in 是 Shell 中的关键字。你看,select in 和 for in 的语法是多么地相似。

我们先来看一个 select in 循环的例子:

    #!/bin/bash
    echo "What is your favourite OS?"
    select name in "Linux" "Windows" "Mac OS" "UNIX" "Android"
    do
        echo $name
    done
    echo "You have selected $name"

运行结果:

What is your favourite OS?
1) Linux
2) Windows
3) Mac OS
4) UNIX
5) Android
#? 4↙
You have selected UNIX
#? 1↙
You have selected Linux

 

工作汇总Linux基础
1.nohup sh ./agent_safe.sh &  # nohup命令会在当前目录下生成nohup.out文件, &符号让当前终端关闭后仍然在后台运行
2.配置umask值只对当前用户有效的文件 .bash_profile 和.bashrc
文件末尾 /home/bankdplyop/.bash_profile 追加"umask 0022"内容后 source才生效
3.服务器修改句柄数 	
	 ulimit -u 当前用户打开最大进程数
     ulimit -n 当前进程打开的文件数
              修改服务器句柄数后,tomcat进程未重启读取的是旧得句柄数值,当tomcat进程重启后才读取新的句柄数,
其验证 cat /proc/pid/limits  查看打开文件数和最大进程数

 

posted @ 2019-08-07 21:30  谈晓军  阅读(163)  评论(0编辑  收藏  举报