zoukankan      html  css  js  c++  java
  • bash的使用

    转自:http://blog.csdn.net/y2888886/article/details/50535033  

    在上篇博文的基础上做如下修改

    注意一些常见命令中间就要加 “ ” ,否则很多命令无法识别

    sh **.sh  和 bash **.sh 在一些命令的解析上还是有差别的,所以尽量使用bash

    博文中let 的写法应为 let x=x+1

    注意for ,while,case也可以使用以下写法(测试这规则也适用于if)

    -eq     等于,如:if [$a -eq $b ]
    -ne 不等于,如:if [$a -ne $b ]
    -gt 大于,如:if [$a -gt $b ]
    -ge 大于等于,如:if [$a -ge $b ]
    -lt 小于,如:if [$a -lt $b ]
    -le 小于等于,如:if [$a -le $b ]
    < 小于(需要双括号),如:((a < b))
    <= 小于等于(需要双括号),如:((a <= b))
    > 大于(需要双括号),如:((a > b))
    >= 大于等于(需要双括号),如:((a >= b))
    == ,!= 也是一样
    
    
    $$ Shell本身的PID(ProcessID) 
    $! Shell最后运行的后台Process的PID 
    $? 最后运行的命令的结束代码(返回值) 
    $- 使用Set命令设定的Flag一览 
    $* 所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。 
    $@ 所有参数列表。如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出所有参数。 
    $# 添加到Shell的参数个数 
    $0 Shell本身的文件名 
    $1~n 添加到Shell的各参数值。$1是第1参数、$2是第2参数…。  $* 返回的是一个字符串,字符串中存在多外空格。 $@ 返回多个字符串

    if [ $? -ne 0 ]; then

    $? 表示上一条命令返回值,如果上一条命令成功执行,返回0,否则返回1. [$? -ne 0] 表示如果$?的值不等于0,则上一条命令执行失败。

    退出码(exit status,或exit code)的约定:

    0表示成功(Zero - Success)

    非0表示失败(Non-Zero  - Failure)

    2表示用法不当(Incorrect Usage)

    127表示命令没有找到(Command Not Found)

    126表示不是可执行的(Not an executable)

    echo "expected conf not found, fail" >&2  这句话中 “>&2”中&表示程序继续运行,2为错误日志 ,1为普通日志

    shift 命令 左移命令,用于输入参数时——命令每执行一次,变量的个数($#)减一(之前的$1变量被销毁,之后的$2就变成了$1),而变量值提前一位  可以shift 2 删除2位变量

    tput的使用

    1. tput clear # 清屏  
    2.   
    3. tput sc # 保存当前光标位置  
    4.   
    5. tput cup 10 13 # 将光标移动到 row col  
    6.   
    7. tput civis # 光标不可见  
    8.   
    9. tput cnorm # 光标可见  
    10.   
    11. tput rc # 显示输出  


  • 相关阅读:
    进制转换
    体验mssql-cli
    从Windows迁移SQL Server到Linux
    CentOS7脱机安装SQL Server 2017
    基础知识:数据类型优先级
    SQL Server 2016正式版安装(超多图)
    制造高CPU使用率的简单方法
    SQL Server启动的几种方法
    SQL Server 2016 RC0 安装(超多图)
    机器学习:Python实现单层Rosenblatt感知器
  • 原文地址:https://www.cnblogs.com/LazyJoJo/p/7479833.html
Copyright © 2011-2022 走看看