Shell(md5sum\sha1sum\sha256sum) 编程杂记
发现三个 Shell 命令 md5sum、sha1sum、sha256sum,发现用于文件下载辨别还是很有用处的。网络上充斥着许许多多魔改的程序,有些改动可能是善意、玩闹的,同时也包含一些改动是恶意的!我们无法保证所下载的资源没有被修改,更不敢保证他们都没有恶意。因此可以使用 md5 、 sha1、sha256 等一系列密码散列函数进行验证。 这里我们不过多的介绍 Shell 命令的具体使用方法,感兴趣的朋友可以自行搜索或者* -help。预期的效果类似与 mkdir -p /opt/demo/demo 简单的花了半个小时进行查找资料发现了有三种方式可以在执行命令的时候动态的改变参数。 在执行 Shell 脚本的后面直接添加字符,例如创建一个’demo.sh' #!/bin/bash echo $1 echo $2$3 $ chmod +x demo.sh $ ./demo.sh $ ./demo.sh 4 5 6 4 56 $ ./demo.sh 14 5 14 5 $ ./demo.sh 14 14 $ ./demo.sh 14 4 14 14 14 414 使用 getopts 命令(获知途径) #!/bin/bash while getopts ":a:b:c:" opt do case $opt in a) echo "参数a的值$OPTARG" ;; b) echo "参数b的值$OPTARG" ;; c) echo "参数c的值$OPTARG" ;; ?) echo "未知参数" exit 1;; esac done $ ./demo.sh -a 1 -b 2 -c 3 参数a的值1 参数b的值2 参数c的值3 $ ./demo.sh -a 1 参数a的值1 $ ./demo.sh -a 11 -d 2 参数a的值11 未知参数 使用read命令(获知途径) #!/bin/bash echo "请根据下面的提示输入你想要设置的值" read -p "var1= " var1 read -p "var2= " var2 read -p "你已经输入了所有的变量值,是否立即打印?y/n:" print if [ ${print}x == yx ];then echo "var1= $var1" echo "var2= $var2" elif [ ${print}x == nx ];then echo "complete" else echo unknow command fi $ ./demo.sh 请根据下面的提示输入你想要设置的值 var1= 9 var2= 8 你已经输入了所有的变量值,是否立即打印?y/n:y var1= 9 var2= 8 ps: 出于惰性并没有详细的跟进以及解剖~~. 最后的阶段性偷懒方案 ...