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.pswp.cn/news/529482.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/529482.shtml
英文地址,請注明出處:http://en.pswp.cn/news/529482.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

linux可用的ftp,linuxunix下有很多可用的ftp服務器

一、ftp服務器簡介linux/unix下有很多可用的ftp服務器&#xff0c;根據這些ftp服務器的可配置性大概可以分為3類&#xff1a;弱、中等、高。功能比較簡單的ftp服務器軟件有“ftpd”和“oftpd”。前者與ftp客戶端工具“ftp”類似&#xff0c;只實現了標準的ftp功能&#xff0c;支…

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語言程序設計移動字母,C語言程序設計模擬試題二(含答案)

C語言程序設計模擬試題二(含答案)1、下列電子郵件地址中正確的是(其中□表示空格)A) Malin&http://www.doczj.com/doc/2969157fa26925c52cc5bfdc.html B) malinhttp://www.doczj.com/doc/2969157fa26925c52cc5bfdc.htmlC) Lin□Ma&http://www.doczj.com/doc/2969157fa2…

c語言字符串輸出瘕b,c語言課件10tt函數(1)幻燈片資料(51頁)-原創力文檔

第 5 講 ;第 8 章 函 數;引例 1;引例2b;m1cmpmax( a , b );cmpmax(int x , int y ){ int z; zx>y?x:y; return (z);};說 明;8.2 函數的調用;main( ){int i2,p; pf( i , i ); printf("%d\n",p);}int f(int a, int b){int c; if (a>b) c1; else if (a b) c0; el…

50行以上c語言程序代碼,C語言非常簡單的字符統計程序50行

該樓層疑似違規已被系統折疊 隱藏此樓查看此樓該程序用于實現linux系統中wc命令的最簡單模式wc 命令用于統計文件中字符信息。[xxlocalhost 1.5]$ wc 01.c 02.c 03.c15 23 131 01.c13 18 127 02.c14 20 128 03.c42 61 386 總用量使用c語言寫出這種小程序。/** Name: count.c* T…

語音編碼 c語言,語音編解碼算法G.723.1在DSP - 嵌入式新聞 - 電子發燒友網

1 引言G.723.1是刪組織于1996年推出的一種低碼率的語音編碼算法標準&#xff0c;也是目前該組織頒布的語音壓縮標準中碼率最低的一種標準。G.723.1主要用于對語音及其它多媒體聲音信號的壓縮&#xff0c;目前在一些數字音視頻傳輸、高質量語音壓縮等系統中都得到廣泛應用。2 G.…

四川大學 設計專業 C語言必修,四川大學C語言2001年真題_跨考網

一、單項選擇題(在每小題的四個備選答案中&#xff0c;選出一個正確的答案&#xff0c;并將其號碼寫在答題紙上。請注意注明題號。每小題1分&#xff0c;共計6分)1、‘\t’表示什么?①字符串常數②標識符③變量④字符常量答案&#xff1a;④2、對宏定義不正確的描述是哪一個?…

大整數乘法c語言數組,很大的數相乘怎么辦?

該樓層疑似違規已被系統折疊 隱藏此樓查看此樓#include&nbsp #include&nbsp using&nbsp namespace&nbsp std;int&nbsp main(int&nbsp argc,&nbsp char&nbsp *argv[]){&nbsp &nbsp&nbsp &nbsp long&nbsp i,j, c,l…

血型遺傳關系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…

linux tcb,在Linux中從潛藏密碼遷移至tcb怎么做?

潛藏密碼作為Linux產品的既定事實標準已經有好多年了&#xff0c;md5密碼的運用亦是如此。但是&#xff0c;運用傳統的潛藏密碼要領也有不足之處&#xff0c;甚至md5也不像以前那么安全了。潛藏密碼文件的一個缺點就是&#xff0c;任意一個須要查詢個別潛藏密碼(如您的密碼)的使…

android 通話結束廣播,在Android中以編程方式結束通話

侃侃爾雅您無需成為系統應用程序。首先&#xff0c;com.android.internal.telephony在您的項目中創建包&#xff0c;并將其放入名為“ ITelephony.aidl” 的文件中&#xff1a;package com.android.internal.telephony; interface ITelephony { boolean endCall(); vo…

android url 快捷方式,Android向桌面添加快捷方式,使其指向特定的(URL)網頁

/** 在桌面添加快捷方式* param icon 快捷方式圖標* param name 快捷方式名稱* param uri 快捷方式的intent Uri*/public void addShortcut(Parcelable icon, String name, Uri uri){Intent intentAddShortcut new Intent(ACTION_ADD_S…

帶nfc 的 android 華為,華為手機NFC功能,原來這么好用,不會用真可惜幾千塊錢了...

華為手機NFC功能&#xff0c;原來這么好用&#xff0c;不會用真可惜幾千塊錢了2019-05-06 17:40:259點贊12收藏6評論華為手機在國內也是數一數二的了&#xff0c;那么用華為手機的小伙伴&#xff0c;怎么能錯過華為手機中NFC的功能呢&#xff1f;下面就隨小編一起來了解一下吧。…

android adb apk包名,ADB命令簡單使用--查看包名、activity等

1、連接設備adb connect ip2、查看連接的設備adb devices3、安裝/卸載Android 應用adb install packagesnameadb uninstall packagesname4、查看設備安裝包名adb shell pm list packages5、查看安裝包的路勁adb shell pm path packagename6、包pull到本地adb shell pull 包路徑…

小米3升級android 6.0,可升級Android 6.0機型一覽 小米手機亮了

前不久&#xff0c;Android M被谷歌正式確定為6.0系統&#xff0c;代號Marshmallow&#xff0c;預計年底前發布。而對于普通用戶來說&#xff0c;最關心的就是自己的手機能不能升級。不過別著急&#xff0c;在此之前&#xff0c;我們不妨看看Android 6.0有哪些新功能。一、Andr…

android 開發人員模式,Android

選取月份2021 年 5 月 (9)2021 年 4 月 (11)2021 年 3 月 (7)2021 年 2 月 (7)2021 年 1 月 (7)2020 年 12 月 (10)2020 年 11 月 (8)2020 年 10 月 (8)2020 年 9 月 (6)2020 年 8 月 (7)2020 年 7 月 (12)2020 年 6 月 (10)2020 年 5 月 (14)2020 年 4 月 (10)2…

安裝華為鴻蒙,魅族選擇與鴻蒙合作,華為這下要成了?

嚯&#xff0c;咱們的魅族可真爭氣&#xff01;眼看華為6月2日的大新聞箭在弦上蓄勢待發&#xff0c;一句“你好&#xff0c;鴻蒙”的問候&#xff0c;瞬間引爆了微博&#xff1a;具體有多熱鬧&#xff0c;你們瞧瞧這轉發和點贊&#xff1a;眾所周知&#xff0c;華為鴻蒙自從公…

瀏覽器兼容性怎么設置HTML,ie10瀏覽器中兼容性設置在哪里

之前ie瀏覽器一直被詬病的因素之一就是兼容性&#xff0c;不過ie10瀏覽器可以對兼容性進行設置&#xff0c;使得在兼容性視圖中顯示所有網站&#xff0c;具體怎么設置呢。下面由學習啦小編為你整理了ie10瀏覽器兼容性設置在哪里的解決方法&#xff0c;希望對你有幫助!ie10兼容性…

如何查詢高考成績2021年的成績排位,2020年高考成績排名怎么查,高考成績排名是怎么排的...

一、2020年高考成績排名怎么查考生查詢自己的排名&#xff0c;首先要在本省教育信息網查詢自己的高考分數&#xff0c;再查找該分數對應高考年份的一分一段表&#xff0c;在表中可以查到自己的名次&#xff0c;注意不要搞錯文理。二、什么是“一分一段表”它顯示每一個分數全省…