shell

作者: Icarus_ac47 | 来源:发表于2018-09-20 19:58 被阅读0次

生成随机数

[root@yunweb jiaoben]# openssl rand -hex 1

27

[root@yunweb jiaoben]# openssl rand -hex 3

cc8dcb

[root@yunweb jiaoben]# openssl rand -hex 2

d4ad

[root@yunweb jiaoben]# openssl rand -hex 3 | sed -r "s/(..)(..)(..)/\1:\2:\3/g"

16:d9:48

read -p “请你输入用户名称:” username 读用户的标准输入

!/bin/bash

bash脚本调试

•sh –x script这将执行该脚本并显示所有变量的值

•sh –n script不执行脚本只是检查语法模式,将返回所有错误语法

•sh –v script执行脚本前把脚本内容显示在屏幕上

\n:换行 \t : tab键 制表符 \r:回车

                                           变量

定义:变量名称=值; =是赋值符号,前后不能有空白 a="hell" $a

永久生效:写到四个登录脚本,/etc/profile ~/.baserc ~/.bash_profile /etc/bashrc source~/.bashrc

在/etc/profile.d建立独立的环境变量配置文件

$$ 当前进程PID

$? 命令执行后的返回状态.0 为执行正确,非 0 为执行错误

$# 位置参数的数量

$* 所有位置参数的内容

$@ 所有的参数

$! 上一个后台进程的PID (wait命令中使用)

$(()) 运算加减乘除 let i++ 应用于累加 +、-、*、/、()、%取余(取模)

bash本身不能做小数计算:需要bc命令转换 #echo "2'*'4" | bc

echo"Press y to continue"

read yn

if[ "$yn" = "y" ]; then

echo "script is running..."

else

echo "STOP!"

fi



case $i in

1)

echo

 ;;

2)

echo

 ;;

3|4)

 echo 

;;

n)

echo 

;;

*) 输入错误;;

esac 
cat <<-EOF

...

EOF
#seq 10             打印1..10  

#seq  5 10              

#seq  1 2 10          只打印奇数  2是步长0
[ 1 -gt 10 ] 大于                                     [ 1 -lt 10 ] 小于                                [ 1 -eq 10 ] 等于

[ 1 -ne 10 ] 不等于                             [ 1 -ge 10 ] 大于等于                           [ 1 -le 10 ] 小于等于
while 循环:

#!/bin/bash

#14.sh

x=0

while [ $x -le 10 ]                                                while:死循环

do

echo $x

  x=`expr $x + 1`let x++

done

while read IP

do

done < /etc/passwd

sleep 10 & 后台运行 wait 作业号或进程号 $! 上一个进程执行的pid

continue:跳出当前这一次循环

用Massachusetts替换MA:

#sed ‘s/MA/Massachusetts/’ file1.txt

改变分隔字符:

#awk -F , '/MA/{ print $1 }' file1.txt
awk -F : 'NR==2 {print $7}'        第二行第7列

1,3范围 从第一行到第三行

#sed -n '1,3p' passwd                                  打印1到3行

删除第五行到结尾所有的行 5,$d

混合使用行地址和模式地址 #sed ‘1,/^$/d' file.txt

删除除了那些行以外的行 1,5!d

c 替换 sed '/zhong/c abc' 将zhong这一行替换成abc

返回值 return value value不能超过255

默认,函数里的变量会在函数外面生效 local 变量名称 //变量只在函数内生效

myfunc()    //函数定义

{

echo “This is my first shell function”

}

myfunc //函数调用

unset myfunc//取消函数

相关文章

  • Shell 学习

    shell 变量 shell 参数传递 shell 数组 shell 运算符 shell echo 命令 prin...

  • Shell 概述

    学习 Shell 主要包括的内容: Shell 脚本入门 Shell 变量 Shell 内置命令 Shell 运算...

  • Shell 教程

    Shell 变量 Shell 传递参数 Shell 数组 Shell 基本运算符 Shell echo 命令 Sh...

  • shell 第一天

    shell编程初识 1.1 shell编程初识 shell的定义 Shell 是命令解释器 Shell 也是...

  • shell 案例

    Shell编程一 Shell防范ARP攻击 Shell编程二 Shell防范DDos攻击 Shell编程三 ...

  • 【生物信息笔记】shell 脚本 (dry-2)

    shell 和 shell script(脚本)区别: shell 和 shell 脚本是两个不同概念,shell...

  • Linux Shell:基础知识和Shell变量

    摘要:Linux,Shell 整理Shell内容要点: Shell基础知识 Shell变量的类型 Shell变量赋...

  • Shell脚本语言一

    一、语法 格式 运行 Shell变量 Shell字符串 Shell数组 Shell注释 Shell传递参数 She...

  • 使用shell脚本

    使用方式 shell 变量 shell 字符串操作 shell 数组 shell 注释 shell 命令行参数 s...

  • vim学习 09——shell命令

    vim学习 09——shell命令 执行 shell 命令 :!shell命令 : 可以执行 shell 命令。 ...

网友评论

      本文标题:shell

      本文链接:https://www.haomeiwen.com/subject/ybrnnftx.html