zoukankan      html  css  js  c++  java
  • linux 脚本命令

    1 运算符

    文件比较运算符
    -e filename  如果 filename存在,则为真  [ -e /var/log/syslog ]
    -d filename  如果 filename为目录,则为真  [ -d /tmp/mydir ]
    -f filename  如果 filename为常规文件,则为真  [ -f /usr/bin/grep ]
    -L filename  如果 filename为符号链接,则为真  [ -L /usr/bin/grep ]
    -r filename  如果 filename可读,则为真  [ -r /var/log/syslog ]
    -w filename  如果 filename可写,则为真  [ -w /var/mytmp.txt ]
    -x filename  如果 filename可执行,则为真  [ -L /usr/bin/grep ]
    filename1-nt filename2  如果 filename1比 filename2新,则为真  [ /tmp/install/etc/services -nt /etc/services ]
    filename1-ot filename2  如果 filename1比 filename2旧,则为真  [ /boot/bzImage -ot arch/i386/boot/bzImage ]
    字符串比较运算符 (请注意引号的使用,这是防止空格扰乱代码的好方法)
    -z string  如果 string长度为零,则为真  [ -z "$myvar" ]
    -n string  如果 string长度非零,则为真  [ -n "$myvar" ]
    string1= string2  如果 string1与 string2相同,则为真  [ "$myvar" = "one two three" ]
    string1!= string2  如果 string1与 string2不同,则为真  [ "$myvar" != "one two three" ]
    算术比较运算符
    num1-eq num2  等于 [ 3 -eq $mynum ]
    num1-ne num2  不等于 [ 3 -ne $mynum ]
    num1-lt num2  小于 [ 3 -lt $mynum ]
    num1-le num2  小于或等于 [ 3 -le $mynum ]
    num1-gt num2  大于 [ 3 -gt $mynum ]
    num1-ge num2  大于或等于 [ 3 -ge $mynum ]

    2 判断语句

    #!/bin/sh
    
    SYSTEM=`uname -s` # 获取操作系统类型,我本地是linux
    
    if [ $SYSTEM = "Linux" ] ; then # 如果是linux话输出linux字符串
    echo "Linux"
    elif [ $SYSTEM = "FreeBSD" ] ; then
    echo "FreeBSD"
    elif [ $SYSTEM = "Solaris" ] ; then
    echo "Solaris"
    else
    echo "What?"
    fi # 判断结束,以fi结尾

    3 grep用法

    -a 或 --text : 不要忽略二进制的数据。
    -A<显示行数> 或 --after-context=<显示行数> : 除了显示符合范本样式的那一列之外,并显示该行之后的内容。
    -b 或 --byte-offset : 在显示符合样式的那一行之前,标示出该行第一个字符的编号。
    -B<显示行数> 或 --before-context=<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前的内容。
    -c 或 --count : 计算符合样式的列数。
    -C<显示行数> 或 --context=<显示行数>或-<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前后的内容。
    -d <动作> 或 --directories=<动作> : 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。
    -e<范本样式> 或 --regexp=<范本样式> : 指定字符串做为查找文件内容的样式。
    -E 或 --extended-regexp : 将样式为延伸的正则表达式来使用。
    -f<规则文件> 或 --file=<规则文件> : 指定规则文件,其内容含有一个或多个规则样式,让grep查找符合规则条件的文件内容,格式为每行一个规则样式。
    -F 或 --fixed-regexp : 将样式视为固定字符串的列表。
    -G 或 --basic-regexp : 将样式视为普通的表示法来使用。
    -h 或 --no-filename : 在显示符合样式的那一行之前,不标示该行所属的文件名称。
    -H 或 --with-filename : 在显示符合样式的那一行之前,表示该行所属的文件名称。
    -i 或 --ignore-case : 忽略字符大小写的差别。
    -l 或 --file-with-matches : 列出文件内容符合指定的样式的文件名称。
    -L 或 --files-without-match : 列出文件内容不符合指定的样式的文件名称。
    -n 或 --line-number : 在显示符合样式的那一行之前,标示出该行的列数编号。
    -o 或 --only-matching : 只显示匹配PATTERN 部分。
    -q 或 --quiet或--silent : 不显示任何信息。
    -r 或 --recursive : 此参数的效果和指定"-d recurse"参数相同。
    -s 或 --no-messages : 不显示错误信息。
    -v 或 --invert-match : 显示不包含匹配文本的所有行。
    -V 或 --version : 显示版本信息。
    -w 或 --word-regexp : 只显示全字符合的列。
    -x --line-regexp : 只显示全列符合的列。
    -y : 此参数的效果和指定"-i"参数相同。
  • 相关阅读:
    【第40套模拟题】【noip2011_mayan】解题报告【map】【数论】【dfs】
    【模拟题(63550802...)】解题报告【贪心】【拓扑排序】【找规律】【树相关】
    【模拟题(电子科大MaxKU)】解题报告【树形问题】【矩阵乘法】【快速幂】【数论】
    IMemoryBufferReference and IMemoryBufferByteAccess
    SoftwareBitmap and BitmapEncoder in Windows.Graphics.Imaging Namespace
    Windows UPnP APIs
    编译Android技术总结
    Windows函数转发器
    Two Ways in Delphi to Get IP Address on Android
    Delphi Call getifaddrs and freeifaddrs on Android
  • 原文地址:https://www.cnblogs.com/xzjf/p/15573119.html
Copyright © 2011-2022 走看看