国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Linux運(yùn)維之初識(shí)shell

這篇具有很好參考價(jià)值的文章主要介紹了Linux運(yùn)維之初識(shí)shell。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一.補(bǔ)充知識(shí)點(diǎn)

1.系統(tǒng)定時(shí)任務(wù)

系統(tǒng)定時(shí)任務(wù)需要用到crontab命令,但是使用此命令有一個(gè)前提,即需要打開crond服務(wù)。為了不那么復(fù)雜,可以直接使用我之前學(xué)的systemctl命令重新啟動(dòng)crond服務(wù)。

  • 語法:``crontab [-e -l -r] `

  • 選項(xiàng):-e 編輯crontab定時(shí)任務(wù);-l 查詢系統(tǒng)crontab任務(wù);-r 刪除當(dāng)前用戶的所有crontab任務(wù)

  • 參數(shù):

    項(xiàng)目 含義 范圍
    第一個(gè)“*” 一小時(shí)當(dāng)中的第幾分鐘 0-59
    第二個(gè)“*” 一天當(dāng)中的第幾個(gè)小時(shí) 0-23
    第三個(gè)“*“ 一個(gè)月當(dāng)中的第幾天 1-31
    第四個(gè)“*” 一年當(dāng)中的第幾天 1-12
    第五個(gè)“*” 一周當(dāng)中的星期幾 0-7
  • 參數(shù)特殊符號(hào):

    特殊符號(hào) 含義
    * 代表任意時(shí)間
    , 代表不連續(xù)的時(shí)間
    - 代表連續(xù)的時(shí)間
    */n 代表每隔多久執(zhí)行一次

注意,這里使用crontab -e進(jìn)入編輯后(界面此時(shí)是一個(gè)vim編輯器),先輸入要設(shè)置的5個(gè)“*”,然后輸入命令保存即可。

2.克隆虛擬機(jī)

之前我們了解了虛擬機(jī)快照技術(shù),這對(duì)我們個(gè)人平時(shí)試錯(cuò)有很大的幫助,同時(shí)這里再補(bǔ)充一種技術(shù),克隆虛擬機(jī)。它不僅能有助于恢復(fù),同時(shí)對(duì)如果想把我們的虛擬機(jī)分享給別人(假設(shè)你的虛擬機(jī)配置了許多東西,別人重新安裝配置很麻煩,而你們需要相同工作環(huán)境),那么這個(gè)時(shí)候使用克隆虛擬機(jī)技術(shù)就相當(dāng)方便了。

如果你需要使用克隆技術(shù),這里有一個(gè)其他博主的鏈接,或許對(duì)你有幫助虛擬機(jī)克隆

二.初識(shí)shell

1.shell

Shell (外殼)是一個(gè)用C語言編寫的程序,它是用戶使用Linux 的橋梁。Shell既是一種命令語言,又是一種程序設(shè)計(jì)語言。

Shell是指一種應(yīng)用程序,這個(gè)應(yīng)用程序提供了一個(gè)界面,用戶通過這個(gè)界面訪問操作系統(tǒng)內(nèi)核的服務(wù)。

2.腳本

腳本簡單地說就是一條條的文字命令,這些文字命令是可以看到的(如可以用記事本打開查看、編輯)。常見的腳本: JavaScript, VBScript,ASP, JSP, PHP, SQL, Perl, Shell, python, Ruby, JavaFX,Lua等。

3.常見shell

在Linux中有很多類型的shell, 不同的shell具備不同的功能,shell 還決定了腳本中函數(shù)的語法,Linux中默認(rèn)的shell是/bin/bash,流行的shell 有ash、bash、 ksh、 csh、zsh等,不同的shell都有自己的特點(diǎn)以及用途。

大多數(shù)Linux系統(tǒng)默認(rèn)使用的shell, bash shell是Bourne shell的一個(gè)免費(fèi)版本,它是最早的Unix shell, bash 還有一個(gè)特點(diǎn), 可以通過help 命令來查看幫助。包含的功能幾乎可以涵蓋shell所具有的功能,所以一般的shell腳本都會(huì)指定它為執(zhí)行路徑。

4.shell基礎(chǔ)

  • 約定俗成,文件以.sh結(jié)尾代表一個(gè)shell文件
  • shell文件開始必須是#!/bin/bash,代表選擇這個(gè)版本解釋器
  • 執(zhí)行shell文件。使用命令bash(sh) 路徑

其實(shí)執(zhí)行shell文件的方式有許多中,但是上面這種不需要任何其他命令輔助,其他方式或多或少都有一些問題,使用這一種即可。

三.shell變量

1.系統(tǒng)預(yù)定義變量

$HOME 、$PWD、$SHELL$USER等是系統(tǒng)預(yù)定義的變量,是環(huán)境變量,在所有的shell文件中都能使用。

關(guān)于環(huán)境變量(全局變量)或者說系統(tǒng)預(yù)定義變量可以參考我的上一篇博客:環(huán)境變量

補(bǔ)充:

Bash是一種Unix/Linux操作系統(tǒng)的命令行解釋器,它允許用戶在終端上輸入命令并執(zhí)行它們??梢詥为?dú)使用bash命令來啟動(dòng)一個(gè)新的Bash shell會(huì)話,在該會(huì)話中,您可以執(zhí)行各種命令和操作。例如,在終端上輸入bash并按Enter鍵可以啟動(dòng)新的Bash shell會(huì)話。此時(shí),您將看到一個(gè)新的命令提示符,表示您現(xiàn)在位于一個(gè)新的Bash shell中,可以在此處輸入各種命令以進(jìn)行操作。要退出Bash shell會(huì)話,請(qǐng)輸入exit并按Enter鍵即可。

2.自定義變量

1.基本語法

  • 定義變量:變量名=變量值,注意,=號(hào)前后不能有空格
  • 撤銷變量:unset 變量名
  • 聲明靜態(tài)變量(只讀變量,無法更改):readonly 變量,注意:不能 unset

2.變量定義規(guī)則

  • (1)變量名稱可以由字母、數(shù)字和下劃線組成,但是不能以數(shù)字開頭,環(huán)境變量名建議大寫。
  • (2)等號(hào)兩側(cè)不能有空格
  • (3)在 bash 中,變量默認(rèn)類型都是字符串類型,無法直接進(jìn)行數(shù)值運(yùn)算。
  • (4)變量的值如果有空格,需要使用雙引號(hào)或單引號(hào)括起來

3.演示

Linux運(yùn)維之初識(shí)shell

3.特殊變量

1. $n

$n (功能描述:n 為數(shù)字,$0 代表該腳本名稱,$1-$9 代表第一到第九個(gè)參數(shù),十以上的參數(shù),十以上的參數(shù)需要用大括號(hào)包含,如${10})

 touch parameter.sh
 vim parameter.sh
#!/bin/bash
echo '==========$n=========='
echo $0
echo $1
echo $2
[atguigu@hadoop101 shells]$ chmod 777 parameter.sh
[atguigu@hadoop101 shells]$ ./parameter.sh cls xz
==========$n==========
./parameter.sh
cls
xz

2.$#

$# (功能描述:獲取所有輸入?yún)?shù)個(gè)數(shù),常用于循環(huán),判斷參數(shù)的個(gè)數(shù)是否正確以及加強(qiáng)腳本的健壯性)

 vim parameter.sh
#!/bin/bash
echo '==========$n=========='
echo $0
echo $1
echo $2
echo '==========$#=========='
echo $#
[atguigu@hadoop101 shells]$ chmod 777 parameter.sh
[atguigu@hadoop101 shells]$ ./parameter.sh cls xz
==========$n==========
./parameter.sh
cls
xz
==========$#==========
2

3.$*、$@

  • $* (功能描述:這個(gè)變量代表命令行中所有的參數(shù),$*把所有的參數(shù)看成一個(gè)整體)
  • $@ (功能描述:這個(gè)變量也代表命令行中所有的參數(shù),不過$@把每個(gè)參數(shù)區(qū)分對(duì)待)
 vim parameter.sh
#!/bin/bash
echo '==========$n=========='
echo $0
echo $1
echo $2
echo '==========$#=========='
echo $#
echo '==========$*=========='
echo $*
echo '==========$@=========='
echo $@
[atguigu@hadoop101 shells]$ ./parameter.sh a b c d e f g
==========$n==========
./parameter.sh
a
b
==========$#==========
7
==========$*==========
a b c d e f g
==========$@==========
a b c d e f g

4.$?

$? (功能描述:最后一次執(zhí)行的命令的返回狀態(tài)。如果這個(gè)變量的值為 0,證明上一個(gè)命令正確執(zhí)行;如果這個(gè)變量的值為非 0(具體是哪個(gè)數(shù),由命令自己來決定),則證明上一個(gè)命令執(zhí)行不正確了。)

./helloworld.sh
hello world
 echo $?
0

四.運(yùn)算符和條件判斷

1.運(yùn)算符

基本語法:$((運(yùn)算式))$[運(yùn)算式]

在其他語言中,定義變量的方式你應(yīng)該不陌生,但是如果在shell中定義變量a=1+5,你可以嘗試一下他輸出的是什么,針對(duì)shell里面的運(yùn)算,有一個(gè)新的命令expr可以計(jì)算,但由于乘法運(yùn)算的星號(hào)在shell中有其他意思,它會(huì)報(bào)錯(cuò),所以才設(shè)置了運(yùn)算符。

實(shí)際操作:

Linux運(yùn)維之初識(shí)shell

2.條件判斷

語法:(1)test condition (2)[ condition ](注意 condition 前后要有空格)兩種方式任選一種即可
注意:條件非空即為 true,[ atguigu ]返回 true,[ ] 返回 false。

常用判斷條件

(1)兩個(gè)整數(shù)之間比較

  • -eq 等于(equal) -ne 不等于(not equal)
  • -lt 小于(less than) -le 小于等于(less equal)
  • -gt 大于(greater than) -ge 大于等于(greater equal)

注:如果是字符串之間的比較 ,用等號(hào)“=”判斷相等;用“!=”判斷不等。

(2)按照文件權(quán)限進(jìn)行判斷

  • -r 有讀的權(quán)限(read)
  • -w 有寫的權(quán)限(write)
  • -x 有執(zhí)行的權(quán)限(execute)

(3)按照文件類型進(jìn)行判斷

  • -e 文件存在(existence)
  • -f 文件存在并且是一個(gè)常規(guī)的文件(file)
  • -d 文件存在并且是一個(gè)目錄(directory)

多條件判斷(&& 表示前一條命令執(zhí)行成功時(shí),才執(zhí)行后一條命令,|| 表示上一條命令執(zhí)行失敗后,才執(zhí)行下一條命令)

演示:

Linux運(yùn)維之初識(shí)shell

五. read 讀取控制臺(tái)輸入

在shell變量中我們知道輸入.sh文件參數(shù)可以通過特殊變量$n的意義進(jìn)行操作,但是不可能總是這種輸入,shell里面也有類似于C語言中scanf()函數(shù)的鍵盤輸入函數(shù),即這里用的read函數(shù)。

1.基本語法

  • 語法:read (選項(xiàng)) (參數(shù))
  • ①選項(xiàng):
    -p:指定讀取值時(shí)的提示符;
    -t:指定讀取值時(shí)等待的時(shí)間(秒)如果-t 不加表示一直等待
  • ②參數(shù)
    變量:指定讀取值的變量名

2.演示代碼

$ touch read.sh
$ vim read.sh
#!/bin/bash
read -t 7 -p "Enter your name in 7 seconds :" NN
echo $NN

上面兩行為終端輸入命令,下下面三行即read.sh文件的內(nèi)容,運(yùn)行即可。

六.說明

新星計(jì)劃:Linux運(yùn)維@劉晨陽導(dǎo)師創(chuàng)作打卡4!文章來源地址http://www.zghlxwxcb.cn/news/detail-426937.html

到了這里,關(guān)于Linux運(yùn)維之初識(shí)shell的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • CentOS運(yùn)維之根目錄擴(kuò)容

    若home分區(qū)有足夠的空間且從來不使用,則可以將home分區(qū)空間擴(kuò)容給/根目錄 1.解除掛載并刪除/home卷 若提示分區(qū)正在被使用,則通過名稱查詢占用進(jìn)程并將進(jìn)程殺死 2.分配冗余空間給根目錄 1.分區(qū) 使用fdisk等命令對(duì)冗余空間創(chuàng)建一個(gè)分區(qū) 2.創(chuàng)建pv卷 使用pvcreate命令創(chuàng)建pv卷 3

    2024年01月18日
    瀏覽(16)
  • linux運(yùn)維知識(shí)點(diǎn)

    Linux作為一種開源操作系統(tǒng),被廣泛地應(yīng)用于企業(yè)、政府和私人用戶的計(jì)算機(jī)系統(tǒng)中,其優(yōu)越的穩(wěn)定性、安全性和靈活性使得 Linux 成為了云計(jì)算、大數(shù)據(jù)和人工智能等最熱門領(lǐng)域的重要組成部分。對(duì)于從事 Linux 運(yùn)維的人員來說,了解其知識(shí)點(diǎn)和技能是必不可少的。本文將從以

    2024年02月15日
    瀏覽(19)
  • 系統(tǒng)運(yùn)維之docker磁盤爆滿-搭配解決方法

    系統(tǒng)運(yùn)維之docker磁盤爆滿-搭配解決方法

    問題描述:日常巡檢發(fā)現(xiàn)本地registry倉庫磁盤爆滿,如何解決?? 解決步驟分析: 確定哪個(gè)文件或者目錄爆滿? 什么原因引起的爆滿? 確認(rèn)此目錄或者文件作用? 確認(rèn)解決方式? 配置預(yù)防手段 直接上圖,查看哪里滿了? 此處看出為/var/lib/docker/overlay2目錄爆滿 看到這里應(yīng)該

    2024年01月16日
    瀏覽(16)
  • 初識(shí)Linux運(yùn)維

    初識(shí)Linux運(yùn)維

    內(nèi)核提供了Linux系統(tǒng)的主要功能,如硬件調(diào)度管理的能力。 Linux內(nèi)核是免費(fèi)開源的,任何人都可以查看內(nèi)核的源代碼,甚至是貢獻(xiàn)源代碼。 內(nèi)核無法被用戶直接使用,需要配合應(yīng)用程序才能被用戶使用。在內(nèi)核之上,封裝系統(tǒng)級(jí)應(yīng)用程序,組合在一起就稱之為 Linux發(fā)行版 。

    2023年04月23日
    瀏覽(30)
  • Apache Doris 極簡運(yùn)維之BE擴(kuò)縮容(1)

    Apache Doris 極簡運(yùn)維之BE擴(kuò)縮容(1)

    已部署三個(gè)BE節(jié)點(diǎn)并且狀態(tài)顯示正常運(yùn)行中 CPU :1C CPU型號(hào) :ARM64 內(nèi)存 :2GB 硬盤 :36GB SSD VM鏡像版本 :CentOS-7 Apahce Doris版本 :1.2.4.1 集群規(guī)模 :1FE * 3BE 注意:DROP BACKEND 會(huì)直接刪除該 BE,并且其上的數(shù)據(jù)將不能再恢復(fù)!??! 所以強(qiáng)烈不推薦使用 DROP BACKEND 這種方式刪除 BE 節(jié)

    2024年02月11日
    瀏覽(31)
  • 大數(shù)據(jù)云計(jì)算運(yùn)維之Nginx反向代理與負(fù)載均衡

    大數(shù)據(jù)云計(jì)算運(yùn)維之Nginx反向代理與負(fù)載均衡

    一、Nginx概述 1.1 概述 Nginx(“engine x”)是一個(gè)高性能的 HTTP /反向代理的服務(wù)器及電子郵件(IMAP/POP3)代理服務(wù)器。 官方測試nginx能夠支撐5萬并發(fā),并且cpu,內(nèi)存等資源消耗卻非常低,運(yùn)行非常穩(wěn)定。最重要的是開源,免費(fèi),可商用的。 Nginx還支持熱部署,幾乎可以做到7 *

    2024年02月11日
    瀏覽(29)
  • 初識(shí)Linux shell

    初識(shí)Linux shell

    Linux系統(tǒng)可以劃分為4個(gè)部分: Linux內(nèi)核 :Linux系統(tǒng)的核心,控制著系統(tǒng)的所有硬件和軟件,在必要時(shí)分配硬件,并根據(jù)需要執(zhí)行軟件。 內(nèi)核主要功能: 系統(tǒng)內(nèi)存管理:內(nèi)核通過硬件上稱為交換空間的存儲(chǔ)區(qū)域來實(shí)現(xiàn)虛擬內(nèi)存;內(nèi)核在交換空間和實(shí)際的物理內(nèi)存之間反復(fù)交換

    2024年02月02日
    瀏覽(19)
  • 【powershell】Windows環(huán)境powershell 運(yùn)維之歷史文件壓縮清理

    【powershell】Windows環(huán)境powershell 運(yùn)維之歷史文件壓縮清理

    ???個(gè)人主頁——??開著拖拉機(jī)回家_Linux,大數(shù)據(jù)運(yùn)維-CSDN博客?????? ???????????????? ?????????????? ???????????????????????? 感謝點(diǎn)贊和關(guān)注 ,每天進(jìn)步一點(diǎn)點(diǎn)!加油! 目錄 一、Power Shell概述 1.1 Windows Power Shell簡介 1.2 PowerShell是什么 1.3 windo

    2024年02月04日
    瀏覽(27)
  • 區(qū)塊鏈學(xué)習(xí)筆記(6(1),深入理解Linux運(yùn)維的核心知識(shí)點(diǎn)

    區(qū)塊鏈學(xué)習(xí)筆記(6(1),深入理解Linux運(yùn)維的核心知識(shí)點(diǎn)

    (3)檢查創(chuàng)世塊文件 (4)? 檢查通道文件(fabric2.2及以前會(huì)用到) 創(chuàng)建節(jié)點(diǎn)的方式有兩種: (1)在創(chuàng)建任何節(jié)點(diǎn)之前,必須在本機(jī)上自定義其配置文件。對(duì)于peer節(jié)點(diǎn),該文件稱為 core.yaml ,而orderer節(jié)點(diǎn)的配置文件稱為 orderer.yaml; (2)使用一個(gè)docker容器,將docker節(jié)點(diǎn)跑在一個(gè)

    2024年04月29日
    瀏覽(36)
  • 【運(yùn)維工程師學(xué)習(xí)三】Linux中Shell腳本編寫

    【運(yùn)維工程師學(xué)習(xí)三】Linux中Shell腳本編寫

    Shell程序有很多, 如 Korn shell(ksh)、Bourne Again shell(bash)、C shell(包括csh與tcsh) 等等, 各主要操作系統(tǒng)下缺省的shell: AIX下是 Korn Shell Solaris缺省的是 Bourne shell FreeBSD缺省的是 C shell HP-UX缺省的是 POSIX shell Linux缺省的是 Bourne Again shell 但這種在命令行中的命令是即時(shí)輸出結(jié)果的,不

    2024年02月11日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包