linux更改语言脚本,Linux shell脚本入门——shell语言脚本【CentOS】

认识脚本

是使用一种特定的描述性语言,依据一定的格式编写的可执行文件。脚本语言又被称为扩建的语言, 或者动态语言, 是一种编程语言, 用来控制软件应用程序, 脚本通常是以文本 (ASCⅡ) 保存, 只是在被调用时进行解释或者编译。

学习shell脚本的用途

对于一个合格的系统管理员来说,学习和掌握Shell编程是非常重要的。可以在很大程度上简化日常的维护工作,使得管理员从简单的重复劳动中解脱出来。

shell特点

1.shell是一个解释性语言(Python也是),不需要编译等过程,它是从脚本程序中一行一行的读取并执行命令;相对于其他语言来说较为简单。

2. shell是什么 shell(壳),又称之为命令解释器,是一种脚本语言,作用是当用户输入命令时,shell会将命令解析传递给内核,通过内核执行相应的动作。

c93b28f568dec8db8821222fd1f2edff.png

学习shell知识储备:

熟练使用vim编译器

熟悉Linux的相关命令和一些基础的服务

熟悉三个工具,grep,sed,awk

脚本的命名规则

其命名规则和标识符的定义相似

一般使用驼峰法命名,第一个单词以小写字母开始;从第二个单词开始以后的每个单词的首字母都采用大写字母,例如:myFirstName、myLastName,国内喜欢用下划线,例如name_file等

shell脚本的基本构成

1.新建一个脚本文件,文件的首行一般为制定shell解释器#!/bin/bash

2.可以写一些合适的注释,在访问脚本时,快速理解执行语句的意思

3.一般约定成俗的在命名脚本文件时为filename.sh

4.可执行语句:即实现程序的功能

5.脚本内注释:-用#实现单行的注释;-用<

shell脚本的执行:

切换到shell脚本所在的目录执行shell脚本

使用绝对路径的方式去执行bash shell脚本

直接使用bash 或sh 来执行bash shell脚本

在当前的shell环境中执行bash shell脚本:source或".“

执行方法之间的区别

方法一和方法二脚本需要执行权限,./script_name.sh或/path/script_name.sh

方法三:可以在脚本中不指定解释器,脚本可以没有执行权限

方法四:当前shell执行,方法1-3开启子shell。

除此外脚本语言还分包括:Scala、JavaScript,VBScript,ActionScript,MAX Script,ASP,JSP,PHP,SQL,Perl,Shell,Python,Ruby等。

353ac2de25eb007fd29b52c0ed2dd34a.png

下面我们做一个脚本来看一下:

#!/bin/bash

# 获取要监控的本地服务器IP地址

IP=`ifconfig | grep inet | grep -vE 'inet6|127.0.0.1' | awk '{print $2}'`

echo "IP地址:"$IP

# 获取cpu总核数

cpu_num=`grep -c "model name" /proc/cpuinfo`

echo "cpu总核数:"$cpu_num

cpu_user=`top -b -n 1 | grep Cpu | awk '{print $2}' | cut -f 1 -d "%"`

echo "用户空间占用CPU百分比:"$cpu_user

# 获取内核空间占用CPU百分比

cpu_system=`top -b -n 1 | grep Cpu | awk '{print $4}' | cut -f 1 -d "%"`

echo "内核空间占用CPU百分比:"$cpu_system

# 获取空闲CPU百分比

cpu_idle=`top -b -n 1 | grep Cpu | awk '{print $8}' | cut -f 1 -d "%"`

echo "空闲CPU百分比:"$cpu_idle

#获取内存信息

# 获取物理内存总量

mem_total=`free | grep Mem | awk '{print $2}'`

echo "物理内存总量:"$mem_total

# 获取操作系统已使用内存总量

mem_sys_used=`free | grep Mem | awk '{print $3}'`

echo "已使用内存总量(操作系统):"$mem_sys_used

# 获取操作系统未使用内存总量

mem_sys_free=`free | grep Mem | awk '{print $4}'`

echo "剩余内存总量(操作系统):"$mem_sys_free

# 获取应用程序已使用的内存总量

mem_user_used=`free | sed -n 3p | awk '{print $3}'`

echo "已使用内存总量(应用程序):"$mem_user_used

# 获取应用程序未使用内存总量

mem_user_free=`free | sed -n 3p | awk '{print $4}'`

echo "剩余内存总量(应用程序):"$mem_user_free

# 获取交换分区总大小

mem_swap_total=`free | grep Swap | awk '{print $2}'`

echo "交换分区总大小:"$mem_swap_total

# 获取已使用交换分区大小

mem_swap_used=`free | grep Swap | awk '{print $3}'`

echo "已使用交换分区大小:"$mem_swap_used

# 获取剩余交换分区大小

mem_swap_free=`free | grep Swap | awk '{print $4}'`

echo "剩余交换分区大小:"$mem_swap_free

cc9e7d19e1854cda7aafef245f4b742f.png

保存然后我们执行一下

0fedad28184d57c87526419e2c7480ba.png

如果提示没有权限记得chmod修改下权限,需要x执行权限。

这样我们一个简单的小脚本就完成了

比如还可以用shell写一个

#!/bin/bash

echo "Hello World !"

执行后会提示 Hello World !

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

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

相关文章

linux视图版怎么输入命令,分享在Linux命令下操作MySQL视图实例代码

视图VIEW命令简介&#xff1a;VIEW视图就是存储下来的SELECT语句数据1。创建视图命令格式&#xff1a;创建[或更换][ALGORITHM {UNDEFINED | MERGE | 不是Temptable}][DEFINER {user | 当前用户 }][SQL SECURITY {DEFINER | INVOKER}]VIEW view_name [(column_list)]AS selec…

宝塔linux 做负载均衡,利用BT宝塔面板做网站多服务器负载均衡图文教程

对于我们做网站的来说&#xff0c;如果流量大了&#xff0c;一台服务器肯定是不够的&#xff0c;接下来要考虑很多方面&#xff0c;比如动静分离、比如数据库异步&#xff0c;比如负载均衡等等。因为我们很多新手站长都用的是BT宝塔面板&#xff0c;下面虾皮路就介绍一下利用BT…

血型遗传关系c语言编程,根据血型遗传关系,编程实现:○1.输入

满意答案df4dfw5e562017.05.28采纳率&#xff1a;51% 等级&#xff1a;6已帮助&#xff1a;106人//仅作参考#include "stdio.h"#include "conio.h"#include "stdlib.h"#include "string.h"int studentNum 0;#define MAXSTUDENT (1…

android 通话结束广播,在Android中以编程方式结束通话

侃侃尔雅您无需成为系统应用程序。首先&#xff0c;com.android.internal.telephony在您的项目中创建包&#xff0c;并将其放入名为“ ITelephony.aidl” 的文件中&#xff1a;package com.android.internal.telephony; interface ITelephony { boolean endCall(); vo…

带nfc 的 android 华为,华为手机NFC功能,原来这么好用,不会用真可惜几千块钱了...

华为手机NFC功能&#xff0c;原来这么好用&#xff0c;不会用真可惜几千块钱了2019-05-06 17:40:259点赞12收藏6评论华为手机在国内也是数一数二的了&#xff0c;那么用华为手机的小伙伴&#xff0c;怎么能错过华为手机中NFC的功能呢&#xff1f;下面就随小编一起来了解一下吧。…

小米3升级android 6.0,可升级Android 6.0机型一览 小米手机亮了

前不久&#xff0c;Android M被谷歌正式确定为6.0系统&#xff0c;代号Marshmallow&#xff0c;预计年底前发布。而对于普通用户来说&#xff0c;最关心的就是自己的手机能不能升级。不过别着急&#xff0c;在此之前&#xff0c;我们不妨看看Android 6.0有哪些新功能。一、Andr…

浏览器兼容性怎么设置HTML,ie10浏览器中兼容性设置在哪里

之前ie浏览器一直被诟病的因素之一就是兼容性&#xff0c;不过ie10浏览器可以对兼容性进行设置&#xff0c;使得在兼容性视图中显示所有网站&#xff0c;具体怎么设置呢。下面由学习啦小编为你整理了ie10浏览器兼容性设置在哪里的解决方法&#xff0c;希望对你有帮助!ie10兼容性…

ksu7对讲机调频软件_科普 | 数字对讲机的群呼功能原理是什么?你了解多少?...

点击上方蓝字关注我们&#xff01;无线对讲机群呼&#xff0c;是为了更好地达到1个数字对讲机能够同一时间跟多个数字对讲机实现语音通话。群呼跟单呼有很多共同之处&#xff0c;下面我们和大家来说说数字对讲机群呼与单呼不同点。当1个数字对讲机处在待机状态的情况下机要发动…

计算机学不学工程制图,大一,马上要考试了,不想再学工程制图了?

买买提烤串累计帮助了195人工科和文科思维方式是不一样的。本人刚好高中理科&#xff0c;大学学文的&#xff0c;而且一专业是中文&#xff0c;二专业管理。大多数工科的特点是靠努力为主的&#xff0c;除了特别难的那种专业&#xff0c;大多数工科的特点是这样的&#xff1a;除…

辅助驾驶等级_双AMR电机位置传感器,助力自动驾驶安全出行

好文章当然要分享啦~如果您喜欢这篇文章&#xff0c;请联系后台添加白名单&#xff0c;欢迎转载哟~在自动驾驶汽车快速发展的今天&#xff0c;汽车电气化趋势逐渐朝着半自动驾驶和全自动驾驶发展&#xff0c;尤其是&#xff0c;为了让电子转向助力(EPS)和电子制动系统满足必要的…

计算机怎么建立共享网络打印机共享,电脑如何连接局域网中的共享打印机—两种方法...

多台电脑而只有一台打印机的时候可以通过连接局域网的方式共享打印机&#xff0c;这样就不需要给每一台电脑都配上打印机了。下面是学习啦小编收集整理的电脑如何连接局域网中的共享打印机—两种方法&#xff0c;希望对大家有帮助~~电脑连接局域网中的共享打印机—两种方法操作…

html5 密码框明文,elementUI的密码框的密文和明文

基于elementui 框架的登录时密码框的明文和密文登录1、templatev-model.trim"ruleForm.password"placeholder"请输入密码":type"passw"clearableblur"onBlur">2、scriptdata(){return{icon: "el-input__icon el-icon-view&quo…

1个显示器分割2画面_我家房子100㎡,原始设计有2个卫生间,纠结保留1个还是2个...

100平米左右的新房装修&#xff0c;设计布局最纠结。尤其是&#xff0c;面积本来就是中等、不大的户型&#xff0c;开发商还给配了2个卫生间。一个主卫&#xff0c;一个客卫。那么问题来了&#xff1a;对于主卧卫生间&#xff0c;我到底是保留还是改成其他的用途&#xff1f;只…

计算机考研数据结构用哪本书,计算机考研数据结构该用哪本参考书?

baoqinshuai新兵答主02-19TA获得超过920个赞一、机械类专业介绍&#xff1a;1、机械设计制造及其自动化机械设计制造及其自动化专业是传统的机械设计制造和先进的自动化技术相结合的产物&#xff0c;是机电一体化的宽口径专业&#xff0c;机械行业是个老行业&#xff0c;人才需…

计算机专业接本应用心理学,专接本接应用心理学但遇到阻挠?

沫沫累计帮助了30人我也是学心理的&#xff0c;学姐你好选专业这件事情&#xff0c;有的放弃自己的意愿&#xff0c;走上了不喜欢的那条路&#xff0c;最后结果对自己来说无论如何都是苦的。有的人跟随了自己的意愿&#xff0c;最后结果不好的 又会埋怨父母当初为什么不加以阻拦…

计算机程序大赛编程,【小学组】海淀区第三届“智慧杯”中小学生计算机程序设计大赛编程思维类初赛...

强密码描述我们称一个密码是强密码&#xff0c;当且仅当它满足以下所有条件&#xff1a;由 8 − 16 个字符组成至少包含一个大写字母 (A-Z)至少包含一个小写字母 (a-z)至少包含一个数字 (0-9)至少包含一个特殊符号 (! # $ % & * _ )娇娇发现她现在的密码好像不是强密码&am…

linux send 失败_Epoll学习服务器的实现-Linux内核原始Epoll结构

1.Begins~有的人学习linux编程很久&#xff0c;只知道网络编程是socket&#xff0c;bind&#xff0c; listen。。。&#xff0c;然而这些都是网络通信软件最基本的接口。在某网络公司待了y&#xff0c;也了解到公司的基础就是网络转发 &#xff0c;然而网络转发实现并非我们平时…

市面上有哪几种门_选择 low-e门窗玻璃,你想知道的都在这了

最近系统门窗群里&#xff0c;不少读者粉丝在咨询关于Low-e玻璃的问题&#xff0c;大家越来越重视好的门窗对于隔热、隔音、隔辐射的作用。我汇总了群里大家咨询最多的20个问题&#xff0c;希望对大家在挑选门窗玻璃时起到一些帮助。在介绍low-e玻璃前&#xff0c;大家先跟着我…

arm中断保护和恢复_嵌入式ARM系统异常和中断处理知识总结

关于异常处理&#xff0c;分为三部分&#xff1a; 1. ARM异常和模式&#xff1a;core处理异常时的操作&#xff0c;几种模式介绍。 2. Vector table&#xff1a; 3. 异常优先级 4. lr偏移&#xff1a;几种异常如何返回异常和中断处理简介在嵌入式系统中异常处理是核心之一。高效…

计算机工作站 曙光,曙光桌面工作站解析

曙光桌面工作站内部架构从整个结构设计来看&#xff0c;整机采用10升小机箱设计&#xff0c;尺寸为326x90x333.4mm&#xff0c;重量在5KG左右&#xff1b;支持垂直放置或横置&#xff0c;节省办公空间。接口方面&#xff0c;整机在前面板提供了4个USB 3.0接口&#xff0c;后置接…