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

news2025/1/15 20:08:25

读者大大们好呀!!!☀️☀️☀️


博客头像
🔥 欢迎来到我的博客
👀期待大大的关注哦❗️❗️❗️
🚀欢迎收看我的主页文章➡️寻至善的主页

文章目录

  • 🔥前言
  • 🚀if else条件控制
    • 基本的if语句
    • 带else的if语句
    • 嵌套的if语句
    • 具体示例
  • 🚀for 循环
    • 具体示例
  • 🚀测试IP地址
  • 🚀获取当前主机的IPv4地址列表
  • ⭐️⭐️⭐️总结

🔥前言

本系列为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的语法介绍,以及实际场景的运用。

✈️✈️✈️如果喜欢这篇文章的话

🙏大大们可以动动发财的小手:
👉👉👉 点赞:👍收藏:⭐️评论:✍️👈👈👈

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1655984.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

通俗易懂讲解 nginx-rtmp-module 是干嘛的?

文章目录 概述安装 nginx 和 nginx-rtmp-module配置 Nginx启动 Nginx使用示例推流拉流转码鉴权与安全自动录制 概述 nginx-rtmp-module 是一个用于 Nginx 的第三方模块&#xff0c;它扩展了 Nginx 服务器的功能&#xff0c;使其能够处理实时流媒体数据&#xff0c;特别是支持 …

leetcode刷题(5): STL的使用

文章目录 56. 合并区间解题思路c实现 55. 跳跃游戏解题思路c 实现 75. 颜色分类解题思路c 实现 36 下一个排列解题思路c 实现 56. 合并区间 题目: 以数组 intervals 表示若干个区间的集合&#xff0c;其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间&a…

仓库管理系统需求调研要点

仓库管理系统需求调研 一、仓库的作用 仓库分类 原材料仓库&#xff1a;用于存放生产所需的原材料和零部件&#xff0c;需要保持原材料的质量和数量稳定。半成品仓库&#xff1a;存放生产过程中的半成品和在制品&#xff0c;需要保持良好的生产流程和及时出库。成品仓库&#x…

tabby多个窗口同时执行插件

一、插件名称 安装插件quick-cmds 二、使用 点击右上角图标&#xff0c;选中命令单机即可。快捷键ALTQ唤出列表&#xff0c;不用每次用鼠标点击右上角&#xff0c;巴适的板。 ctrl enter发送全部

EditReady for Mac激活版:专业视频转码工具

对于视频专业人员来说&#xff0c;一款高效的视频转码工具是不可或缺的。EditReady for Mac正是这样一款强大的工具&#xff0c;它拥有简洁直观的操作界面和强大的功能&#xff0c;让您的视频处理工作事半功倍。 EditReady for Mac支持多种视频格式的转码&#xff0c;并且支持常…

旺店通·企业奇门和金蝶云星空单据接口对接

旺店通企业奇门和金蝶云星空单据接口对接 源系统:金蝶云星空 金蝶K/3Cloud&#xff08;金蝶云星空&#xff09;是移动互联网时代的新型ERP&#xff0c;是基于WEB2.0与云技术的新时代企业管理服务平台。金蝶K/3Cloud围绕着“生态、人人、体验”&#xff0c;旨在帮助企业打造面向…

【解决】Android Studio Toast点击不显示

问题描述 开发Android程序过程中&#xff0c;突然发现在Android studio的模拟机上&#xff0c;运行测试程序&#xff0c;Toast弹框不能使用了&#xff0c;但是解决方法非常粗暴和直接&#xff1a;重新加载一个新的虚拟机或清空当前虚拟机的数据&#xff0c;然后再重启。 明显&a…

如何把多个文件(夹)向上移动1层(或多层)(在批量复制前或后进行)

首先&#xff0c;需要用到的这个工具&#xff1a; 度娘网盘 提取码&#xff1a;qwu2 蓝奏云 提取码&#xff1a;2r1z 假定情况是&#xff0c;我要把下图里的4个文件夹内部的全部文件&#xff0c;合并到04的当前位置来&#xff08;4个文件夹里面各有5个兔兔的图片&#xff09…

【教学类-53-01】20240509“去掉背景的png彩色图片”转“黑色影子图”

作品展示 背景需求&#xff1a; 刚写完蒙德里安涂色学具&#xff0c;准备开课&#xff0c;转眼班级就“百日咳“”隔离3周&#xff0c;o(╥﹏╥)o 我的AI对话大师只剩1个月的有效期&#xff0c;剩下9万6千次也马上就作废了。 最后一个月可以尽量多用掉一些&#xff0c;我从小…

JVM的垃圾回收

JVM简介 JVM 是 Java Virtual Machine 的简称&#xff0c;意为 Java虚拟机。 虚拟机:是指通过软件模拟的具有完整硬件功能、运行在一个完全隔离的环境中完整计算机系统 1.JVM的内存区域划分 jvm是一个java进程 每一个java进程就是一个jvm实例 一个进程运行过程中 就要从操作系…

使用C++ __builtin_expect优化程序性能后,程序体积不改变原因

结论 使用__builtin_expect优化程序性能&#xff0c;开启-O3的情况下&#xff0c;确实程序的体积可能不改变&#xff0c;但是还是会产生优化效果。 测试代码 不使用__builtin_expect #include <iostream>void fun(int a, int b) {// 不使用__builtin_expectif (a <…

前端面试题 | 常考题整理

本文为面试中出现的高频次考题&#xff0c;具体还是要看所有题。 目录 css 1、☆介绍下 BFC 及其应用 3、☆浮动清除 17、☆说几个未知宽高元素水平垂直居中方法 js 9、☆箭头函数与普通函数的区别是什么&#xff1f;构造函数可以使用 new 生成实例&#xff0c;那么箭头…

Hass哈斯数控数据采集网络IP配置设置

机床数据采集&#xff08;MDC&#xff09;允许你使用Q和E命令通过网络接口或选项无线网络从控制系统提取数据。设置143支持该功能&#xff0c;并且指定控制器使用这个数据端口。MDC是一个需要一台附加计算机发送请求&#xff0c;解释说明和存储机床数据的软件功能。这个远程计算…

【Vue】结合ElementUI实现简单数据请求和页面跳转功能

一、准备工作 1、创建一个Vue-cli程序 之前的博客有。各位看官姥爷&#xff0c;可以自查。 2、安装ElementUI 在创建Vue-cli程序的过程中&#xff0c;需要在控制台执行以下指令&#xff1a; #安装 element-ui npm i element-ui -S #安装 SASS 加载器 cnpm install sass-loa…

SD卡和TF卡

SD卡和TF的电信号区别在于 SD比TF多一个地线。 请注意假如TVS结电容过高会导致无法通信&#xff0c;对于高速的通信同样如此&#xff0c;需要控制好ESD的结电容。 SD卡线需要注意50ohm阻抗要求 https://blog.csdn.net/jiangfutao/article/details/124466153 SD卡&#xff1a; …

解析ProxySQL的故障转移机制

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 解析ProxySQL的故障转移机制 前言故障检测故障切换策略故障转移流程 前言 在数据库的世界里&#xff0c;故障就像是一颗定时炸弹&#xff0c;随时可能引发系统崩溃。而ProxySQL&#xff0c;就像是这场…

组织机构树形列表实现

先看下效果图&#xff1a; 主要是用xm-select.js组件做的一个树形列表 xm-select.js的说明文档&#xff1a;https://maplemei.gitee.io/xm-select/?select1#/basic/disabled 实现步骤&#xff1a; HTML部分 <!DOCTYPE html> <html lang"en"> <hea…

【Linux系统编程】第十五弹---调试器gdb使用

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】 目录 1、背景 2、安装gdb 3、gdb的使用 总结 1、背景 前面我们学习了文件编辑器&#xff0c;项目自动化构建工具&#xff0c;以及g…

mybatis-plus代码

项目结构 config package com.example.mpdemo.config;import com.baomidou.mybatisplus.annotation.DbType; import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerIntercept…

1756jsp农产品销售管理系统Myeclipse开发mysql数据库C2C模式java编程计算机网页项目沙箱支付

一、源码特点 java 农产品销售管理系统 是一套完善的web设计系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统采用web模式&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发&#xff0…