Linux控制台简单编程
1、查看变量 :set
2、删除变量 :unset 变量名
3、变量赋值 :var1=`cat test.txt | grep -w "this is a test"`
1) 变量名=值,之间不要有空格,不然变量名会被当做命令
2) 如果将某个命令的结果赋值给变量,用 `` 引起来
3) grep全匹配,-w
4、控制台查看变量值 :echo $变量名、${变量名}、"$变量名"、"${变量名}"
if 语句中用最好用 " " 引其阿里
5、判空
1) 为空 :if [ -z "$变量名" ] ; then echo xxx; else echo yyy; fi;
2) 不为空 :if [ -n "$变量名" ] ; then echo yyy; else echo xxx; fi;
6、包含字符串子串 :
1) 使用 =~ 运算符 :if [[ $var1_hlf =~ $var2_hlf ]]; then echo 1; else echo 0; fi;
2) 使用通配符 * :if [[ $var1_hlf == $var2_hlf* ]]; then echo 1; else echo 0; fi;
7、查询行号 :grep -n -w "字符串" 文件名
1) -n 显示行号,-w 全匹配
2) grep -n 结果显示为 行号:行内容,获取行号需要进行切分
8、划分字符串为数组
1) Linux有环境变量 IFS=$' \t\n' ,这就是切分符
2) () 就是根据 IFS 进行字符串切分
3) 法一 :将字符串切分符替换为空格,"/" 后面有空格
var2=( ${var1//切分符/ } ) ; echo ${var2[0]}
4) 法二 :用临时变量保存 IFS 环境变量值,将IFS修改为目标切分符,最后再将原始值赋给 IFS
tmpIFS=$IFS; $IFS="切分符"; var2=( $var1 ); IFS=$tmpIFS; unset tmpIFS;
5) 建议使用法一
9、ssh公钥登录

浙公网安备 33010602011771号