轉(zhuǎn)載自:http://zhidao.baidu.com/question/493376840.html,
http://blog.sina.com.cn/s/blog_71261a2d0100wmbj.html
謝謝!
1.Shell腳本 有那些類型 比如說 .csh . py .sh 這些腳本又有什么區(qū)別
通常寫一個(gè)shell腳本都要在第一行注明使用什么解釋器來解釋這個(gè)腳本,即寫成:#!/bin/bash
這樣的形式,意思是告訴系統(tǒng)要使用/bin/bash這個(gè)解釋器來解釋下面的語句。
shell的腳本一般用.sh作為后綴,就如1樓說的后綴名在Linux下并沒有特別意義,只是便于人類區(qū)分而已,只要你寫的腳本的第一行有#!/bin/bash或者是其他的解釋器,如#!/bin/csh,執(zhí)行該腳本時(shí)系統(tǒng)會(huì)使用該注明的解釋器來解釋。
.csh大概是用來區(qū)分,這個(gè)腳本使用csh這個(gè)shell解釋器來解釋。
.sh用來區(qū)分,這個(gè)腳本使用bash或sh解釋器來解釋。
.py則是使用python來解釋。
2.sh,bash,csh,tcsh等shell的區(qū)別
Bourne Shell(即sh)是UNIX最初使用的shell,平且在每種UNIX上都可以使用。Bourne Shell在shell編程方便相當(dāng)優(yōu)秀,但在處理與用戶的交互方便作得不如其他幾種shell。
LinuxOS默認(rèn)的是Bourne Again Shell,它是Bourne Shell的擴(kuò)展,簡(jiǎn)稱bash,與Bourne Shell完全兼容,并且在Bourne Shell的基礎(chǔ)上增加,增強(qiáng)了很多特性??梢蕴峁┟钛a(bǔ)全,命令編輯和命令歷史等功能。它還包含了很多C Shell和Korn Shell中的優(yōu)點(diǎn),有靈活和強(qiáng)大的編輯接口,同時(shí)又很友好的用戶界面
C Shell是一種比Bourne Shell更適合的變種Shell,它的語法與C語言很相似。Linux為喜歡使用C Shell的人提供了Tcsh。
Tcsh是C Shell的一個(gè)擴(kuò)展版本。Tcsh包括命令行編輯,可編程單詞補(bǔ)全,拼寫校正,歷史命令替換,作業(yè)控制和類似C語言的語法,他不僅和Bash Shell提示符兼容,而且還提供比Bash Shell更多的提示符參數(shù)。
Korn Shell集合了C Shell和Bourne Shell的優(yōu)點(diǎn)并且和Bourne Shell完全兼容。Linux系統(tǒng)提供了pdksh(ksh的擴(kuò)展),它支持人物控制,可以在命令行上掛起,后臺(tái)執(zhí)行,喚醒或終止程序。
|