shell脚本学习-进阶

简介: shell脚本学习-进阶

前言

学习前建议先自己看一遍菜鸟教程Linux基础

视频来源:

可供观看视频

直达链接【3天搞定Linux,1天搞定Shell,清华学神带你通关-哔哩哔哩】 https://b23.tv/QTjzN9G


查看自己服务器所支持的shell种类

cat /etc/shells


shell脚本启动几种方法

#以下全部操作基于当前目录
touch hello.sh #创建一个shell脚本
vim hello.sh #编辑shell脚本
#创建第一个hello.sh
#!/bin/bash  
echo "hello world!"
bash hello.sh #执行脚本
sh hello.sh #第二种方法
./hello.sh #也可以直接执行,但可能出现权限不够
chmod +x hello.sh #利用chmod赋予权限
source hello.sh #也可以执行sh脚本
. hello.sh

变量
系统变量

查看系统变量的值

ps -f #可查看当前进程
 echo $HOME #echo+$变量名(一般都为大写字母)

显示当前shell中中变量的几种方法

set #显示当前shell中所有变量
env | less #或者不加less 如果输出内容过多,使用less是分页查看作用
printenv $USER
printenv USER

在Linux中,env和set命令都可以用来查看系统变量,但它们有一些区别。
1 env命令:env命令用于显示当前环境中定义的所有变量,包括系统变量和用户自定义变量。它会列出所有的环境变量及其对应的值。这些环境变量可以在当前会话中被所有的进程访问到。
2 set命令:set命令用于显示当前Shell会话中的所有变量,包括环境变量、局部变量和Shell内置变量。它会列出所有的变量及其对应的值,包括当前Shell会话中的所有变量。这些变量可以在当前Shell会话中被访问和修改。
总结来说,env命令显示的是当前环境中的变量,而set命令显示的是当前Shell会话中的所有变量。env命令更适合查看系统级别的环境变量,而set命令更适合查看当前Shell会话的变量。

局部变量变全局变量方法

export + 变量名
目录
相关文章
|
5天前
|
Java 关系型数据库 MySQL
Elasticsearch【问题记录 01】启动服务&停止服务的2类方法【及 java.nio.file.AccessDeniedException: xx/pid 问题解决】(含shell脚本文件)
【4月更文挑战第12天】Elasticsearch【问题记录 01】启动服务&停止服务的2类方法【及 java.nio.file.AccessDeniedException: xx/pid 问题解决】(含shell脚本文件)
33 3
|
23小时前
|
弹性计算 运维 Shell
每天解析一个shell脚本(61)
【4月更文挑战第26天】shell脚本解析及训练(61)
11 3
|
1天前
|
弹性计算 运维 Shell
每天解析一个shell脚本(58)
【4月更文挑战第26天】shell脚本解析及训练(58)
67 0
|
1天前
|
弹性计算 Shell 数据安全/隐私保护
每天解析一个shell脚本(56)
【4月更文挑战第26天】shell脚本解析及训练(56)
13 0
|
2天前
|
运维 Shell Python
Shell和Python学习教程总结
Shell和Python学习教程总结
|
2天前
|
监控 Shell 应用服务中间件
第十二章 Shell脚本编写及常见面试题(二)
第十二章 Shell脚本编写及常见面试题(二)
|
2天前
|
监控 关系型数据库 Shell
第十二章 Shell脚本编写及常见面试题(一)
第十二章 Shell脚本编写及常见面试题(一)
|
3天前
|
监控 Shell
生产环境Shell脚本Ping监控主机是否存活(多种方法)
生产环境Shell脚本Ping监控主机是否存活(多种方法)
|
3天前
|
运维 Shell
Shell脚本判断IP是否合法性(多种方法)
Shell脚本判断IP是否合法性(多种方法)
|
9天前
|
运维 监控 Shell
利用Shell脚本编写局域网监控软件:实时监测主机连接情况
本文介绍了如何使用Shell脚本创建一个局域网监控工具,以实时检查主机连接状态。脚本包括扫描IP地址范围检测主机可达性及使用`netstat`监控ESTABLISHED连接。此外,还展示了如何每60秒将连接数数据自动提交到指定网站API,以便实时跟踪网络活动。这个自动化监控系统有助于提升网络安全性和故障排查效率。
34 0