Linux环境变量及算法

shell脚本变量设置


声明:
 export A=1
用户级:
 vim ~/.bash_profile 或 ~/.bashrc                          ###~:当前用户的家目录
系统级:
 vim /etc/profile
 export A=1

用户级表示当前用户的环境变量,如果系统级的环境变量,以export A=1为例,所以的用户echo $A的值都为1

alias:别名
 alias                                                    ###查看别名
 vim /etc/bashrc                                          ####全局/etc/profile也可以
 alias dream='vim' 
 source /etc/bashec                                       ###这样我们就可以用dream当vim使用了  
 unalisas dream                                           ###取消别名                                                      

转义(服从就近原则)和变量


 echo $$		                                  ###表示进程的id
 echo "$$$$"	                                          ###弱转义,不能转义特殊符号:$ ! \ `等 需要在特殊符号前面加\转义
 echo '$$$$'                                              ###强转义
 a=2
 echo ${a}b                                                ###可以先运行变量,这样输出的结果为2b

算法的表示:
(());let;expr;$[ ]
注意:除法这些要用单引号

 #!/bin/bash
 a=1
 b=2
 #((c=a+b))
 #let c=$a+$b
 #c=`expr $a + $b`
 c=$[$a+$b]
 echo "$c"

bc:计算器

 [root@server mnt]# bc
 bc 1.06.95
 Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
 This is free software with ABSOLUTELY NO WARRANTY.
 For details type `warranty'. 
 1+2
 3
 $1                                                     ###脚本后面的第一串字符串
 $#                                                     ###脚本后所跟的字符串个数
 $*                                                     ###脚本后跟的所有字符串,模式为"1 2 3"
 $@                                                     ###脚本后跟的所有字符串,模式为"1" "2" "3"

可以用脚本测试2个的区别:

 for n in "$*"                                          ###把$*换乘$@可以测试另外一个
 do
 echo "$n"
 done

通过username和passwd文件建立用户和密码

 vim username
 user1
 user2
 user3

 vim passwd
 123
 456
 789

 vim create_user.sh
 #!/bin/bash
 [ ! "$#" -eq "2" ]&&{
         echo "ERROR"
         exit
          }
 MAX=`wc -l $1 | awk '{print $1}'`
 for NUM in `seq 1 $MAX`
 do
         USERNAME=`sed -n ${NUM}p $1`
        PASSWD=`sed -n ${NUM}p $2`
        useradd  $USERNAME
        echo $PASSWD | passwd --stdin $USERNAME &>/dev/null &&echo created $    USERNAME $PASSWD
 done

退出命令的区别

 continue                                             ###退出此次结果
 break                                                ###退出当前循环
 exit                                                 ###退出当前脚本

测试3个的区别:

 vim test.sh
 for i in {1..10}
 do
     if [ "$i" = "7" ];then
         echo hello world
         continue                                 
     fi
     echo $i
 done
 echo end

continue:

这里写图片描述

break:

这里写图片描述

exit:

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wielun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值