首页 > 系统相关 >linux运维之bash脚本编程

linux运维之bash脚本编程

时间:2023-05-29 19:31:47浏览次数:49  
标签:脚本 运维 -- 用户 linux 执行 环境变量 bash

算法 + 数据结构 = 程序


编程语言分类:

低级语言:

机器语言:二进制码,0、1

汇编语言:用一些容易理解和记忆的缩写单词来代替一些特定的指令

高级语言:

解释型语言:源代码-->编译-->得到二进制可执行文件-->执行

eg:PHP、Python、Shell

编译型语言:源代码-->执行

eg:Java、C、C++、Golang

动态编译语言

不用事先声明,可随时改变类型

静态编译语言

需要事先声明,不可改变类型。


强类型语言


弱类型语言

编程风格:面向过程、面向对象


编程逻辑处理方式:顺序执行、选择执行、循环执行、


shell脚本语言的基本用法

脚本的用途:

将简单的命令组合完成复杂的工作,自动化执行命令,提高工作效率

减少手工命令的输入,一定程度上避免人为错误

将软件或应用的安装及配置实现标准化

用于实现日常性的,重复性的,非交互式的运维工作,如:文件打包压缩备份,监控系统运行状态并实现告警等


常见脚本执行方式:

相对路径执行:

绝对路径执行:

bash执行:

管道执行:

当前进程中执行:

当前子进程中执行:

本地执行远程脚本:

在远程主机中运行本地脚本:


脚本调试:

语法调试  bash -n 文件名称.sh

Debug     bash -x 文件名称.sh


脚本错误:

语法错误、命令错误、逻辑错误


变量类型:内置变量、用户自定义变量


系统环境变量 VS 用户环境变量

linux环境变量和Windows的环境变量一样,分系统环境变量和用户环境变量,系统环境变量对所有用户有效,而用户环境变量只对当前用户有效。

如果既配置了系统环境变量,又配置了用户环境变量,最终会以用户环境变量的配置为准。









标签:脚本,运维,--,用户,linux,执行,环境变量,bash
From: https://blog.51cto.com/u_13102203/6373698

相关文章

  • Linux常见命令汇总
    Linux常用命令1、Linux系统简介开源免费使用,技术支持:主要是字符模式,命令行界面操作,更加稳定。2、为啥学?负责搭建和维护,后端服务器搭建硬件服务器云服务器远程链接的工具Xshell3、xshell链接4、Linux目录结构层级式的树状目录结构"/"根目录"~"表示当前目录的加目录,超......
  • Linux 下载和安装软件
    wget下载wget是一个从网络上自动下载文件的自由工具,支持通过 HTTP、HTTPS、FTP三个最常见的 TCP/IP协议 下载,并可以使用HTTP代理。"wget"这个名称来源于“WorldWideWeb”与“get”的结合。wget类似于迅雷,是一种下载工具,可以下载各种软件安装包等文件。首先,我......
  • linux常用指令(文本编辑)
    (1).vim 安装vimyuminstallvim命令命令模式--vim文件名字或者编辑模式按esc进入i--在光标的前面插入字符a--在光标的后面添加入字符o--在光标下一行插入字符编辑模式--命令行模式按i进入yy--复制当前行p--粘贴dd--删除当前行......
  • linux全景指南摘录-摘录至微信公众号《linux技术迷》
    Linux性能优化的全景指南Linux性能优化性能优化性能指标高并发和响应快对应着性能优化的两个核心指标:吞吐 应用负载角度:直接影响了产品终端的用户体验系统资源角度:资源使用率、饱和度等性能问题的本质就是系统资源已经到达瓶颈,但请求的处理还不够快,无法支......
  • Linux基本命令(基础版)
    具体Linux的信息建议先自己百度了解,本博客是笔者自己的学习记录,因此本博客是按照本人的学习进度及内容而写的,如有错误或者忘记的,欢迎留言告知。进入Linux系统Linux系统与Windows系统的设定理念大不相同,windows系统的设想是用户都是傻子,所以系统面向对象来说比较简单,而Linux系统则认......
  • 转载-奇小葩- linux性能工具--ftrace使用
    原文链接:https://blog.csdn.net/u012489236/article/details/119519361 Ftrace设计作为一个内部的tracer提供给系统的开发者和设计者,帮助他们弄清kernel正在发生的行为,它能够调式分析延迟和性能问题。对于前一章节,我们学习了Ftrace发展到现在已经不仅仅是作为一个functiontr......
  • Linux下C++实现一个定时器
    要在Linux下实现一个定时器,可以使用以下两种方法:使用系统提供的定时器APILinux系统提供了一些定时器API,如setitimer、timer_create、timer_gettime等,可以使用这些API来实现定时器。以setitimer为例,可以按照以下步骤来使用:1.定义一个itimerval结构体变量,该结构体包含定时器的初......
  • linux系统/dev/mapper/centos-root目录被占满的解决方式
    1、查看虚拟机磁盘使用情况df-h 可以看到/dev/mapper/centos-root已经快满了,这时候就算启动hdfs,也会是强制性的进入安全模式,不让写数据2、查看哪个目录占用过高使用du-h-x--max-depth=1查看哪个目录占用过高,对于过高目录中的内容适当删减腾出一些空间cd/&&du-h......
  • 转载-奇小葩-linux性能工具--ftrace框架
    原文链接:https://blog.csdn.net/u012489236/article/details/119494200 对于ftrace架构,主要来了解下内核是如何实现的,其主要包括如下内容:ringbuffer的原理和代码分析tracer(function、function_graph、irq_off)原理和代码分析traceevent1.ringBufferRingbuffer是......
  • linux常用指令(拷贝移动命令)
    (1).cp--复制cphello.txtitcast/--将hello.txt复制到itcast目录中cphello.txt./hi.txt--将hello.txt复制到当前目录,并改名为hi.txtcp-ritcast/./itheima/--将itcast目录和目录下所有文件复制到itheima目录下cp-ritcast/*./itheima/--将itcas......