编程入门(六)【Linux系统基础操作四】

简介: 编程入门(六)【Linux系统基础操作四】

🔥前言

本系列为Linux基础操作,共有四篇,第一篇为了解Linux的基本概念与操作及相关的文件目录操作第二篇为Linux的用户与网络管理第三篇为Linux的进程和磁盘管理及安装包管理第四篇为Linux shell编程。

本篇为第四篇:Linux shell编程

🚀if else条件控制

基本的if语句

if condition
then
      command1
      command2
      ...
      commandN
fi

带else的if语句

if condition
then
   command1
   command2
   ...
   commandN
else
   command
fi

嵌套的if语句

if  condition1
then
   command1
elif comdition2
then
   command2
else
   commandN
fi

具体示例

1、简单比较

#!/bin/bash
a=$1
b=$2
if [[ -z ${a} && -z ${b} ]]
then
   echo "The length of the two string is 0."
else
   if [[ ${a} != ${b} ]]
   then
      echo "${a} != ${b} :a is not equal to b"
   else
      echo "${a} == ${b} :a is equal to b"
   fi
fi

2、根据路径与文件名,查看是否存在该文件

场景:在服务器中查找对应的日志文件。

3、查看是否为当前用户

🚀for 循环

for var in item1 item2 ...... itemn
do
command1
command2
......
commandn
done

具体示例

#!/bin/bash
sum=0
for (( i=1; i<=100; i++ ))
do
 sum=$(( ${sum} + ${i} ))
done
echo "1+2+3+4...+100 = ${sum}"

🚀测试IP地址

🚀获取当前主机的IPv4地址列表

场景:

这个脚本可以应用于任何表格有第二列数据的情况,把某一行的第二列的数据取出来,所以并非一定用于获取ip地址场景:同时也是grep、awk和sed 这三个命令的综合应用

  1. grep:先过滤出来含inet的行,inet后要加个空格,去掉含inet6的行
  2. awk:取出第二列,并打印出来
  3. sed:在一个文档内部的查找和替换功能
  • s:替换,s后的/是一个分隔符
  • addr : 被替换的关键字,// 代表分隔符中间是空的,代表将addr:替换成空
  • g :如果查找到不止一个,全部替换

⭐️⭐️⭐️总结

本篇是linux基础的最后一篇,对shell编程中if、for的语法介绍,以及实际场景的运用。

目录
相关文章
|
2天前
|
存储 JSON Linux
|
1天前
|
Linux 测试技术 网络安全
【好玩的开源项目】Linux系统之部署吃豆人经典小游戏
【7月更文挑战第18天】Linux系统之部署吃豆人经典小游戏
19 1
|
3天前
|
Linux 测试技术 网络安全
【好玩的开源项目】Linux系统之部署跳一跳经典小游戏
【7月更文挑战第16天】Linux系统之部署跳一跳经典小游戏
25 6
|
4天前
|
Linux 测试技术 网络安全
【好玩的开源项目】Linux系统之部署adarkroom文字风格冒险小游戏
【7月更文挑战第15天】Linux系统之部署adarkroom文字风格冒险小游戏
21 4
|
2天前
|
JavaScript Linux 测试技术
【好玩的开源项目】Linux系统之部署proxx扫清黑洞小游戏
【7月更文挑战第17天】Linux系统之部署proxx扫清黑洞小游戏
11 1
|
5天前
|
存储 固态存储 Linux
systemd-analyze:Linux系统启动性能分析的利器
`systemd-analyze`是Linux下分析systemd启动性能的工具,它提供启动时间统计、服务耗时、依赖关系及图形化展示。通过`blame`查看服务启动时间,`critical-chain`显示关键路径,`plot`生成启动时间线图。使用时注意日志完整性,优化服务顺序,并结合最佳实践提升启动效率。
|
5天前
|
缓存 监控 网络协议
Linux系统性能优化
Linux系统的性能是指操作系统完成任务的有效性、稳定性和响应速度。
14 1
|
2月前
|
监控 网络协议 Java
Linux 网络编程从入门到进阶 学习指南
在上一篇文章中,我们探讨了 Linux 系统编程的诸多基础构件,包括文件操作、进程管理和线程同步等,接下来,我们将视野扩展到网络世界。在这个新篇章里,我们要让应用跳出单机限制,学会在网络上跨机器交流信息。
Linux 网络编程从入门到进阶 学习指南
|
9月前
|
存储 Linux C语言
Linux:入门学习知识及常见指令
Linux:入门学习知识及常见指令
|
2月前
|
存储 消息中间件 网络协议
Linux 系统编程从入门到进阶 学习指南
本文旨在为初学者提供一个清晰的 Linux 系统编程入门指南,带你步入 Linux 系统编程的世界,从基本概念到实用技能,一步步建立起您的知识体系。
Linux 系统编程从入门到进阶 学习指南