亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Linux Shell > 正文

shell腳本語言的使用(超全超詳細)

2020-07-26 23:25:32
字體:
來源:轉載
供稿:網友

1、shell的概述

shell 是一種腳本語言
腳本:本質是一個文件,文件里面存放的是 特定格式的指令,系統可以使用腳本解析器 翻譯或解析 指令 并執行(它不需要編譯)
shell 既是應用程序 又是一種腳本語言(應用程序 解析 腳本語言)
shell命令解析器:
系統提供 shell命令解析器: sh ash bash
查看自己linux系統的默認解析:echo $SHELL




shell腳本是一種腳本語言,我們只需使用任意文本編輯器,按照語法編寫相應程序,增加可執行權限,即可在安裝shell命令解釋器的環境下執行

2、腳本的調用形式

打開終端時系統自動調用:/etc/profile 或 ~/.bashrc

/etc/profile
此文件為系統的每個用戶設置環境信息,當用戶第一次登錄時,該文件被執行,系統的公共環境變量在這里設置
開始自啟動的程序,一般也在這里設置
~/.bashrc
用戶自己的家目錄中的.bashrc
登錄時會自動調用,打開任意終端時也會自動調用
這個文件一般設置與個人用戶有關的環境變量,如交叉編譯器的路徑等等
用戶手動調用:用戶實現的腳本

3、shell語法初識

3.1、定義以開頭:#!/bin/bash

#!用來聲明腳本由什么shell解釋,否則使用默認shell

3.2、單個"#"號代表注釋當前行第一步:編寫腳本文件

第二步:加上可執行權限

chmod +x xxxx.sh

第三步:運行

三種執行方式 (./xxx.sh bash xxx.sh . xxx.sh)

三種執行方式的不同點(./xxx.sh bash xxx.sh . xxx.sh)

./xxx.sh :先按照 文件中#!指定的解析器解析

如果#!指定指定的解析器不存在 才會使用系統默認的解析器

bash xxx.sh:指明先用bash解析器解析

如果bash不存在 才會使用默認解析器

. xxx.sh 直接使用默認解析器解析

三種執行情況:(重要)

注意:windows下 寫腳本 在linux下執行 注意


執行結果:


將windows文件 轉換成 unix文件
方法一:dos2unix 如果沒有該插件 需要安裝
sudo apt-get install dos2unix
dos2unix shell腳本
轉換成功就可以執行運行
方法二:
需要用vi打開腳本,在最后一行模式下執行
:set ff=unix

4、變量

定義變量
變量名=變量值
如:num=10
引用變量
$變量名
unset :清除變量值


運行結果:


從鍵盤獲取值read


運行結果:

案例:

在一行上顯示和添加提示 需要加上-p


運行結果:

案例:讀取多個值


運行結果:

案例只讀變量:


運行結果:

查看環境變量:env



導出環境變量(其他shell識別該變量)

source 腳本文件
source命令用法:
source FileName
作用:在當前bash環境下讀取并執行FileName中的命令。
注:該命令通常用命令“.”來替代。
如:source .bash_rc 與 . .bash_rc 是等效的。
注意:source命令與shell scripts的區別是,
source在當前bash環境下執行命令,而scripts是啟動一個子shell來執行命令。這樣如果把設置環境變量(或alias等等)的命令寫進scripts中,就只會影響子shell,無法改變當前的BASH,所以通過文件(命令列)設置環境變量時,要用source 命令。



可以在終端中讀?。?br />


在其他sh腳本讀?。?br />


運行結果:

注意事項:

1、變量名只能包含英文字母下劃線,不能以數字開頭
1_num=10 錯誤
num_1=20 正確
2、等號兩邊不能直接接空格符,若變量中本身就包含了空格,則整個字符串都要用雙引號、或單引號括起來
3、雙引號 單引號的區別
雙引號:可以解析變量的值
單引號:不能解析變量的值


運行結果:


如果想在PATH變量中 追加一個路徑寫法如下:(重要?。。。。?/p>

export PATH=$PATH:/需要添加的路徑

5、預設變量

shell直接提供無需定義的變量

案例:


運行結果:

腳本標量的特殊用法




加-e轉義 才起換行作用


()由子shell 完成


{}由當前的shell執行

6、變量的擴展

6.1、判斷變量是否存在


6.2、字符串的操作

7、條件測試

test命令:用于測試字符串、文件狀態和數字
test命令有兩種格式:
test condition 或[ condition ]
使用方括號時,要注意在條件兩邊加上空格。

7.1、文件測試


7.2、字符串測試



7.3、數值測試



7.4、符合語句測試


8、控制語句

8.1、if控制語句

格式一:if [條件1]; then  執行第一段程序else  執行第二段程序fi格式二:if [條件1]; then  執行第一段程序elif [條件2];then執行第二段程序else  執行第三段程序fi

案例:

案例:判斷當前路徑下有沒有文件夾 有就進入創建文件 沒有 就創建文件夾 再進入創建文件


運行結果:

案例:


運行結果:

8.2、case


8.3、for循環語句



案例:

案例:掃描當前文件

8.4、while


8.5、until


8.6、break continue

9、函數


所有函數在使用前必須定義,必須將函數放在腳本開始部分,直至shell解釋器首次發現它時,才可以使用

案例:求最值

案例:函數分文件


fun.sh


24_sh.sh

到此這篇關于shell腳本語言的使用(超全超詳細)的文章就介紹到這了,更多相關shell腳本語言內容請搜索武林網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持武林網!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品永久在线| 国产精品视频永久免费播放| 日韩在线观看成人| 9.1国产丝袜在线观看| 久久精品国产精品亚洲| …久久精品99久久香蕉国产| 97精品欧美一区二区三区| 欧美在线视频导航| 92福利视频午夜1000合集在线观看| 国产在线观看91精品一区| 亚洲全黄一级网站| 亚洲国产精品久久久久秋霞蜜臀| 5252色成人免费视频| 亚洲人成网站色ww在线| 亚洲视频在线观看网站| 欧美大片免费观看| 欧美成人在线免费视频| 日韩欧美视频一区二区三区| 日韩av影院在线观看| 一本色道久久综合亚洲精品小说| 91黄色8090| 欧美日韩国产成人在线| 欧美激情在线有限公司| 成人性生交大片免费看视频直播| 亚洲精品国产精品自产a区红杏吧| 精品无人区乱码1区2区3区在线| 国产精品国产三级国产aⅴ9色| 国产成人一区二区在线| 欧美一区二区视频97| 欧美国产高跟鞋裸体秀xxxhd| 国产拍精品一二三| 精品久久久免费| 欧美精品videos性欧美| 欧美日韩国产限制| 欧美午夜电影在线| 91av视频导航| 97在线精品视频| 乱亲女秽乱长久久久| 美女扒开尿口让男人操亚洲视频网站| 亚洲欧洲在线观看| 成人福利视频网| 欧美激情精品久久久久久免费印度| 国产在线观看精品一区二区三区| 亚洲激情 国产| 日本高清+成人网在线观看| 欧美中文字幕视频在线观看| 最近2019中文字幕mv免费看| 欧美大胆a视频| 国产亚洲激情在线| 欧美一级淫片播放口| 国产成人精品视| 久久亚洲一区二区三区四区五区高| 日韩国产在线看| 久久不射电影网| 国产精品麻豆va在线播放| 欧美激情xxxx性bbbb| 亚洲免费中文字幕| 久久精品国产一区二区三区| 欧美视频一区二区三区…| 久久人91精品久久久久久不卡| yw.139尤物在线精品视频| 91免费在线视频| 久久久国产一区二区三区| 91精品久久久久| 亚洲精品第一国产综合精品| 91久久精品视频| 欧美电影在线观看完整版| 福利视频一区二区| 国产一区二区日韩精品欧美精品| 久久精品视频在线播放| 国产91对白在线播放| 国产亚洲精品日韩| 九九精品视频在线观看| 欧洲成人在线观看| 国产精品一区二区久久久| 欧美性猛xxx| 色琪琪综合男人的天堂aⅴ视频| 欧美激情亚洲精品| 亚洲精品欧美极品| 91精品在线观| 这里精品视频免费| 久久精品视频在线播放| 欧美一乱一性一交一视频| 成人久久18免费网站图片| 欧美成人精品一区二区三区| 秋霞av国产精品一区| 欧美日韩国产123| 亚洲色图校园春色| 欧美中文在线观看| 久久中国妇女中文字幕| 国内精品久久久久久久久| 日韩免费不卡av| 欧美国产日韩中文字幕在线| 97精品国产97久久久久久春色| 欧美在线影院在线视频| 国产+人+亚洲| 国产一区二区三区视频免费| 97久久超碰福利国产精品…| 久久综合久久八八| 欧美高清在线视频观看不卡| 日韩电影大片中文字幕| 日韩大片免费观看视频播放| 亚洲欧美激情四射在线日| 日韩av在线影院| 国产成人一区二区三区| 国内精品400部情侣激情| 亚洲国产精品国自产拍av秋霞| 一道本无吗dⅴd在线播放一区| 欧美午夜丰满在线18影院| 日韩欧美中文免费| 日韩美女免费线视频| 姬川优奈aav一区二区| 一本一本久久a久久精品综合小说| 欧美日韩在线视频观看| 91精品国产网站| 亚洲va久久久噜噜噜久久天堂| 亚洲欧洲国产精品| 日韩一区二区久久久| 久久夜色撩人精品| 亚洲天堂男人天堂女人天堂| 日韩一区二区欧美| 国产精品老女人精品视频| 国产一区二区三区在线观看视频| 成人免费福利在线| 久久精视频免费在线久久完整在线看| 午夜精品久久久久久久久久久久久| 亚洲第一页中文字幕| 97在线精品国自产拍中文| 国产香蕉97碰碰久久人人| 国产精品视频网址| 亚洲护士老师的毛茸茸最新章节| 国产91成人在在线播放| 日韩精品免费在线| 国产精品爽爽爽爽爽爽在线观看| 国产日韩亚洲欧美| 久久亚洲精品成人| 国产精品久久久久久av下载红粉| 国产在线日韩在线| 久久久久久69| 欧美精品videosex极品1| 国产精品一区二区三区在线播放| 国产婷婷色综合av蜜臀av| 亚洲xxx大片| 国产91ⅴ在线精品免费观看| 久久久噜噜噜久久中文字免| 日韩中文在线不卡| 亚洲男女性事视频| 亚洲国产私拍精品国模在线观看| 日本久久久久亚洲中字幕| 国产日韩在线观看av| 亚洲成年网站在线观看| 亚洲国产一区二区三区在线观看| 久久精品福利视频| 日韩精品高清在线| 亚洲va久久久噜噜噜久久天堂| 成人情趣片在线观看免费| 国产精品视频区1| 日韩欧美在线观看视频| 久久大大胆人体| 中文字幕日韩视频| 欧美精品videos另类日本| 怡红院精品视频| 国产成人久久久| 国产免费一区二区三区在线能观看|