shell常用命令

Posted rustling

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell常用命令相关的知识,希望对你有一定的参考价值。

#!/usr/bin/env bash
# Date: 2018-05-28
# Description: shell script learning notes

# 变量赋值使用 $(data)
# 对变量进行引用或字符串组合时,使用 ${ } 将变量扩含起来
# 处理字符串,加双引号 " "


# script learning notes
function note1()
{
    # 脚本中执行或引入库函数
    . ./filename
    # 返回脚本所在目录
    cd `dirname  $0`
}


function note2()
{
    # 0  stdin      # 标准输入
    # 1  stdout     # 标准输出
    # 2  stderr     # 标准错误输出
    ./filename 1>output 2>error
    2>&1            # 标准错误重新定向到标准输出
    ./filename >/dev/null 2>&1  # 输出定向到黑洞设备,不显示输出
}


# comparison operator
function comparison_operator()
{
    # 文件比较运算符
    [ -e filename ]  # filename存在,则为真
    [ -d filename ]  # filename为目录,则为真
    [ -f filename ]  # filename为文件,则为真
    [ -L filename ]  # filename为符号链接,则为真
    [ -r filename ]  # filename可读,则为真
    [ -w filename ]  # filename可写,则为真
    [ -x filename ]  # filename可执行,则为真
    [ filename1 -nt filename2 ]  # filename1比filename2新,则为真
    [ filename1 -ot filename2 ]  # filename1比filename2旧,则为真

    # 字符串比较运算符
    [ -z string ]  # string长度为零,则为真
    [ -n string ]  # string长度为非零,则为真
    [ "str1" = "str2" ]  # 字符串是否相同
    [ "str1" != "str2" ]  # 字符串是否不同

    # 算术比较运算符
    -eq  # 等于
    -ne  # 不等于
    -lt  # 小于
    -le  # 小于或等于
    -gt  # 大于
    -ge  # 大于或等于
}


# positional paramter
function positional_parameter()
{
    $#  # 表示位置参数的数量
    $*  # 表示所有位置参数的内容 "a b c"
    [email protected]  # 表示所有位置参数 "a" "b" "c"
    $?  # 表示命令执行后返回的状态,成功返回0; 不成功,返回非0
    $$  # 表示当前进程的进程号
    $!  # 表示后台运行的最后一个进程号
    $0  # 表示当前进程名
    $n  # (n为1-9)就是位置变量
}


# write log to file
function log()
{
    echo "[$(date +'%Y-%m-%d %H:%M:%S')] [email protected]" >> log.log
}


main()
{
    log "hell world"
}


main [email protected]

以上是关于shell常用命令的主要内容,如果未能解决你的问题,请参考以下文章

提效小技巧——记录那些不常用的代码片段

shell脚本简介及常用文本编辑命令

常用的shell变量

代码片段:Shell脚本实现重复执行和多进程

hadoop常用shell命令怎么用

Linux shell常用命令