zoukankan      html  css  js  c++  java
  • shell之常用的一些命令

    前言

      自我感觉学习shell要常用`man`,`--help`这样挺方便去写的,光靠熟练远远不够的

    #!/bin/bash
    wget命令
    我用到最多就是请求http网站啦,一般很少加参数
    set -x
    url(){
    timeout=6
    fail=0
    success=0
    while true
    do
           	wget --timeout=$timeout --tries=1 https://www.cnblogs.com/zqxFly/ -q -o /dev/null
            if [ $? -ne 0]
    	then
    	        let fail=fail+1
            else
                    let success+=1
            fi
            if [ $success -ge 1]
    	then
                    echo success
                    exit 0
            fi
            if [ $fails -ge 2]
    	then
                    ttry="sys is dowm"
                    echo $ttry|tee|mail -s "https://www.cnblogs.com/xxx"
                    exit 2
            fi
    done
    }
    url
    
    wget 接http link
    
    expr 命令是一个手工命令行计数器
    1.结合match进行整数判断
    if [[`expr match "$1" "[0-9] [0-9]*$"` == 0 ] ]
    then
    echo "$1 is not a num"
    else
    echo "$1 is a num"
    fi
    2.判断字符
    expr $1 + 1 >/dev/null 2>&1
    [ $? -eq 0 ] &&echo int || echo chars
    while true
    do
    	read -p "hello adol":a
    	expr $a + 0 >/dev/null 2>&1
    	[ $? -eq 0 ] && echo int || echo chars
    done
    3.整数运算[ $# -ne 2 ] &&{
    echo $"usage $0 num1 num2"
    exit 1
    }
    a=$1
    b=$2
    expr $a + $b + 110 &>/dev/null
    if [ $? -ne 0 ]
    then
    	echo "you must two nums"
    	exit
    fi
    echo "a-b=$(($a-$b))"
    echo "a+b=$(($a+$b))"
    echo "a*b=$(($a*$b))"
    echo "a/b=$(($a/$b))"
    echo "a**b=$(($a**$b))"
    echo "a%b=$(($a%$b))"
    
    bc 命令是任意精度计算器语言
    bc(选项)(参数)
    通过管道符
    echo "1.11+2" | bc
    直接输入bc
    
    read命令用于从标准输入读取数值

         read -p "name:"
         echo "shuchu $name"
        if read -t 5 -p "ipnut website name:"
        then
                  echo "输入网站名 $website"
        else
                  echo "\n超时了"
        fi
        exit 0

    参数说明:
    • -a 后跟一个变量,该变量会被认为是个数组,然后给其赋值,默认是以空格为分割符。
    • -d 后面跟一个标志符,其实只有其后的第一个字符有用,作为结束的标志。
    • -p 后面跟提示信息,即在输入前打印提示信息。
    • -e 在输入的时候可以使用命令补全功能。
    • -n 后跟一个数字,定义输入文本的长度,很实用。
    • -r 屏蔽\,如果没有该选项,则\作为一个转义字符,有的话 \就是个正常的字符了。
    • -s 安静模式,在输入字符时不再屏幕上显示,例如login时输入密码。
    • -t 后面跟秒数,定义输入字符的等待时间。
    • -u 后面跟fd,从文件描述符中读入,该文件描述符可以是exec新开启的。
  • 相关阅读:
    抓包工具—Fiddler
    vue 统一注册公共组件
    vscode 配置 eslint 自动格式化
    vue axios http 请求 响应拦截
    vue实现菜单权限控制
    webpack之深入浅出externals
    webpack之前端性能优化(史上最全,不断更新中。。。)
    webpack插件url-loader使用规范
    移动端布局最佳实践(viewport+rem)
    本地更新代码同步至github仓库
  • 原文地址:https://www.cnblogs.com/zqxFly/p/15775694.html
Copyright © 2011-2022 走看看