Linux-shell简单学习

我是南城余!阿里云开发者平台专家博士证书获得者!

欢迎关注我的博客!一同成长!

一名从事运维开发的worker,记录分享学习。

专注于AI,运维开发,windows Linux 系统领域的分享!

其他中间件安装可参考下方知识库!

本章节对应知识库

shell · 语雀


bash 复制代码
#变量声明 不能有空格
my_var="hello nanchengyu" #双引号 单引号均可
echo $my_var #输出声明变量

export $my_var #将变量提示为全局变量

#撤销变量 unset 变量名 
#声明静态变量 readonly 变量 注意不能使用 unset

#特殊变量 $n(n为数字,$0表示该脚本名称,$1-9代表第一到第九个参数,十以上的参数需要使用大括号包含,例如${110})
#./hello.sh xiaoming #后面直接跟参数即可
# $# (获取所有的输入参数的个数,常用于循环,判断参数的个数是否正确,以及加强脚本的健壮性)
# $*(这个命令就是相当于写入脚本中,把所有的脚本中的参数输出,把所有的参数看成一个整体相当于 字符串)
# $@ (同上,不过把每个参数区别对待 想等于数组)
#$? (最后一次执行的命令返回的状态,如果变量的值为0,代表上一次命令正确执行,如果非0,则相反,命令执行错误)

#编写脚本 第一行默认带上 #!/bin/bash


#运算
$((运算符)) 或者 $[运算符]

#条件判断 [ condition ](注意 condition 前后要有空格) 返回0 代表true 返回1 代表false 与其他编程语言相反
#不能使用 > < 因为在Linux中 > 表示输出覆盖 
#-eq 表示等于 -ne表示 不等于(not equal) -lt(less then)小于
#-le 小于等于 (less equal) -gt 大于 (greater than) -ge 大于等于 (greater equal)


#if判断
if [ 条件判断式 ];then 
  程序
fi
#或者
if [条件判断式] 
then 
  	程序
fi

if [条件判断式]
then
   程序
elif [条件判断式]
then 
    程序
else
    程序
fi

#函数

条件分支

bash 复制代码
#!/bim/bash

if [ "$1"x = "nanchengyu"x ] #x没含义,只是一种分隔符,防止程序报错
then
       echo "hello , nanchengyu"
fi

#输入第二个参数
if [ $2 -lt 18 ]
then 
     echo "问成年人"
elif [ $2 -lt 35 ]
then 
     echo "青年人"
elif [ $2 -lt 60 ]
then 
  	 echo "中年人"
elif
     echo "老年人"
fi

#执行该脚本并传入两个参数 ./test.sh nanchengyu 20

正则表达式

#特殊字符

#1.^ 匹配一行的开头 例如 cat /etc/passwd | grep ^a 会匹配所有以a开头的行

#2. 匹配一行的结束 例如 cat /etc/passwd \| grep t

#3. . 匹配一个任意的字符 一个点代表一个字符 例如 cat /etc/passwd | grep r..t 会匹配包含rabt rbbt root 等的所有行

相关推荐
水云桐程序员2 小时前
从零开发软件的步骤,软件开发从零到完成应该怎么做?
笔记·学习·软件构建·个人开发
David猪大卫3 小时前
【Linux修炼】环境变量、进程地址空间
linux·c语言·经验分享·笔记·学习·ubuntu·centos
飞飞传输4 小时前
飞驰云联文件交换建设方法论:从单点传输到持续治理
大数据·运维·安全
叼烟扛炮4 小时前
Linux 学习笔记(五十六):IO 多路复用初探——select 的“三宗罪”
linux·服务器·数据库·笔记·学习·php
Ruiery4 小时前
Linux 6.6内核内存管理深度解析(十五):CMA 连续内存分配器
linux·运维·服务器
测试界的小码农5 小时前
【Linux 命令实战(01):认识 Linux 终端,从零掌握第一个命令】
linux·运维·服务器
布裘5 小时前
【银河麒麟】重启后时区丢失?排查发现 localtime 被业务程序替换成硬链接
linux·运维·网络
huainingning6 小时前
锐捷10.X路由器版本升级不生效问题排查
运维·网络·智能路由器
荣合技术服务7 小时前
HPC 超算集群故障维修实录:找荣合科算维护后,模拟仿真计算又能跑了
运维·服务器·超算服务器·荣合科算
GeW8 小时前
高端化转型进入“补底层”阶段:Linux与数据库的再定位
linux