linux命令之sh的使用及說明
shell簡(jiǎn)介
sh命令就是shell
而我們知道shell的作用是什么?shell就是用來解釋linux命令的,我們輸入命令,指示linux幫我們做什么,而linux本身是看不懂我們輸入的命令的,它只認(rèn)識(shí)01,而事實(shí)顯然不是如此, 那么在用戶和linux之間必然有個(gè)橋梁起到了轉(zhuǎn)換的作用,這里的橋梁就是shell。
shell有很多種,常見的如
Bourne shell (sh)、C shell (csh) 和 Korn shell (ksh)。
Bourne shell 是 UNIX 最初使用的 shell,簡(jiǎn)稱sh。
Linux 操作系統(tǒng)缺省的 shell 是Bourne Again shell,一看什么區(qū)別?
多了個(gè)Again,即簡(jiǎn)稱 bash。但是有的同學(xué)可能會(huì)問,我平常在linux用到的sh命令或者在shell腳本第一行寫的“#!/bin/sh”都是指的Bourne shell嗎,不是的。為什么呢?

看到了吧,linux中默認(rèn)把/bin/sh 指向了/bin/bash,所以我們平常用的就是/bin/bash。至于sh和bash什么區(qū)別,顧名思義的來解釋,多了個(gè)Again嘛,其實(shí)事實(shí)也是如此,bash擴(kuò)展了sh,并繼承吸收了csh和ksh的優(yōu)點(diǎn),知道這么多就夠了。
說了那么多,來看看sh命令吧
格式 :sh [選項(xiàng)] 命令字符串或者shell腳本
常見選項(xiàng):
- -c:command后面跟一個(gè)字符串,這個(gè)字符串可以是我們平常執(zhí)行的任何命令,有參數(shù)選項(xiàng)時(shí)一定要用引號(hào)括起來
- -x:后面跟shell腳本,可以詳細(xì)的顯示shell腳本的執(zhí)行信息
看下面的例子
sh -c "ls -l"等價(jià)于 ls -l:

比如,現(xiàn)在我有個(gè)job.sh,實(shí)現(xiàn)的功能是每個(gè)一秒鐘輸出一句話,共輸出十次,內(nèi)容如下:
i=0 while [ $i -lt 10 ] do echo "現(xiàn)在i的值是:"$i i=$(($i+1)) sleep 1 done
當(dāng)我執(zhí)行命令“sh -x job.sh”來調(diào)試執(zhí)行的時(shí)候輸出什么信息呢?如下:
+ i=0 + '[' 0 -lt 10 ']' + echo $'\347\216\260\345\234\250i\347\232\204\345\200\274\346\230\257\357\274\2320' 現(xiàn)在i的值是:0 + i=1 + sleep 1 + '[' 1 -lt 10 ']' + echo $'\347\216\260\345\234\250i\347\232\204\345\200\274\346\230\257\357\274\2321' 現(xiàn)在i的值是:1
我這里沒有全部粘貼過來,下面都是一樣的了,我就不粘貼了,以"+"開頭的就是調(diào)試的詳細(xì)信息了,通過給sh命令知道-x選項(xiàng),可以方便我們排查錯(cuò)誤信息。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
linux?類型??版本?內(nèi)存?磁盤?查詢命令介紹
這篇文章介紹了linux?類型?、版本、內(nèi)存、磁盤?查詢命令,希望本篇文章可以幫助到大家的學(xué)習(xí),喜歡本篇文章可以收藏一下方便下次瀏覽2021-11-11
centos7系統(tǒng)下搭建docker本地鏡像倉(cāng)庫(kù)的方法
本篇文章主要介紹了CentOS 7 : Docker私有倉(cāng)庫(kù)搭建和使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-02-02
詳解Linux系統(tǒng)中網(wǎng)卡MAC地址克隆方法
本篇文章主要介紹了詳解Linux系統(tǒng)中網(wǎng)卡MAC地址克隆方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-06-06
詳解CentOS的SVN服務(wù)器搭建與自動(dòng)部署全過程
最近因?yàn)楣ぷ餍枰?,花了一個(gè)晚上時(shí)間折騰svn,網(wǎng)上的教程太亂太雜,還有很多是錯(cuò)誤的,終于搞定了,所以想著把過程記錄下來。這篇文章主要介紹了CentOS的SVN服務(wù)器搭建與自動(dòng)部署全過程,需要的朋友可以參考借鑒,下面來一起看看吧。2017-02-02

