當前位置:首頁 » 編程軟體 » csh腳本

csh腳本

發布時間: 2023-08-14 03:09:04

① 創建一個shell腳本,該腳本接收10個數,並顯示最大數,最小數。求高手的linuxs,在網上查的那些都執行不了!

一般shell只接受$0~$9十個位置參數,其中$0表示腳本名稱本身,也就是說只有$1~$9共9個參數。超過9個參數的話,比如你這里要10個數,需要用shift移位來獲取後面的更多參數。

#!/bin/sh
if [ $# -ne 10 ]; then
echo -e "Wrong parameters!\nYou MUST input 10 digits."
exit 1
fi
min=$1
max=$1
i=1
while [ $i -lt 10 ]
do
shift 1
let i+=1
[ $1 -lt $min ] && min=$1
[ $1 -gt $max ] && max=$1
done
echo "Min=$min"
echo "Max=$max"
exit 0

② 在ubuntu的終端中運行腳本文件的問題

.sh後綴是無關緊要的東西,linux的文件是不根據擴展名來判斷文件類型的,是否有.sh後綴完全不能說明該文件是否為腳本文件,只是用.sh後綴向用戶表示一下這是一個shell腳本。
linux下定位一個文件需要該文件完整文件名。該文件然來是什麼名字就敲什麼名字,可以通過tab鍵自動補全。

「bash: /usr/local/bin/XXX.sh:csh:損壞的解釋器: 沒有該文件或目錄」
至於報錯的問題,需要在腳本的第一行寫上完整的路徑
這個路徑可以用命令which csh得到

③ Shell腳本有哪些類型.csh . py .sh 這些腳本有什麼區別

通常寫一個shell腳本都要在第一行註明使用什麼解釋器來解釋這個腳本,即寫成:
#!/bin/bash
這樣的形式,意思是告訴系統要使用/bin/bash這個解釋器來解釋下面的語句。
shell的腳本一般用.sh作為後綴,就如1樓說的後綴名在Linux下並沒有特別意義,只是便於人類區分而已,只要你寫的腳本的第一行有#!/bin/bash或者是其他的解釋器,如#!/bin/csh,執行該腳本時系統會使用該註明的解釋器來解釋。
.csh大概是用來區分,這個腳本使用csh這個shell解釋器來解釋。
.sh用來區分,這個腳本使用bash或sh解釋器來解釋。
.py則是使用python來解釋。

④ shell腳本的常用循環

在簡單介紹shell腳本(shell script)之前,先簡單介紹一下shell。

在計算機科學中, shell (殼層)指「為用戶提供用戶界面」的軟體,通常指的是命令行界面的解析器。一般來說,這個詞是指操作系統中,提供訪問內核所提供之服務的程序。Shell也用於泛指所有為用戶提供操作界面的程序,也就是程序和用戶交互的介面。因此與之相對的是程序內核(英語:Kernel),內核不提供和用戶的交互功能。
不過這個詞也拿來指應用軟體,或是任何在特定組件外圍的軟體,例如瀏覽器或電子郵件軟體是HTML排版引擎的shell。Shell這個詞是來自於操作系統(內核)與用戶界面的外層界面。
通常將shell分為兩類:命令行與圖形界面。命令行殼層提供一個命令行界面(CLI);而圖形殼層提供一個圖形用戶界面(GUI)。

shell腳本 (英語:shell script),又稱shell命令稿、程序化腳本,是一種電腦程序與文本文件,內容由一連串的shell命令組成,經由Unix Shell直譯其內容後運作。被當成是一種腳本語言來設計,其運作方式與解釋型語言相當,由Unix shell扮演命令行解釋器的角色,在讀取shell腳本之後,依序運行其中的shell命令,之後輸出結果。利用shell腳本可以進行系統管理,文件操作等。
在Unix及所有的類Unix系統中,如Linux、FreeBSD等操作系統,都存在shell腳本。依照Unix shell的各種不同類型,shell腳本也有各種不同方言,如 Bourne shell (sh), Bourne-Again shell (bash), C shell (csh)等等。在DOS、OS/2、Microsoft Windows中的批處理文件,跟shell腳本有類似的功能。

常見的shell腳本循環語法包括for、while和until。除此之外,還有一些其他語法,能夠實現循環(遍歷)功能。和循環相關的還有循環控制符break和continue,用於控制流程轉向。

for循環屬於「當型循環」,即「當滿足條件的時候執行」。

for循環有三種類型:

常見的數值for循環語法還有:

for file in $( ls )語法的等效語法有很多,如下:

或者

類C風格的for循環,和C沒有太大的區別,這里只進行示例,不再贅述。

或者

結果:

也稱為前測試循環語句,重復次數是利用一個條件來控制是否繼續重復執行這個語句。為了避免死循環,必須保證循環體中包含循環出口條件即表達式存在退出狀態為非0的情況。例如,計算1~100以內所有的奇數之和:

當然,條件可以使字元串,可以是輸入值,可以是標記等,此處不再贅述。

until命令和while命令類似,while能實現的功能until也可以實現。但區別是until循環的退出狀態是為0(與while剛好相反),即whie循環在條件為真時繼續執行循環,而until則在條件為假時執行循環。
例如,計算1~100以內所有的奇數之和:

select結構從技術角度看不能算是循環結構,只是相似而已,它是bash的擴展結構用於互動式菜單顯示,功能類似於case結構,但是比case的交互性要好。在遍歷列表功能中,select結構可以實現循環的功能。
例如,以下選擇,只有選擇white的時候,退出循環

在循環語法中,經常需要根據條件控制循環退出或跳過本次執行,這時候就需要用到循環控制符。循環控制符主要包括兩個:break和continue。

循環控制符和C以及Java等常見語法功能類似,在理不再贅述,只給出常用示例。

在for、while和until循環中break可強行退出循環。
注意 :break語句僅能退出當前的循環,如果是兩層循環嵌套,則需要在外層循環中使用break。
例如,計算1~100以內所有的奇數之和:

在for、while和until中用於讓腳本跳過其後面的語句,執行下一次循環。
例如,顯示10以內能被3整除的正整數。

以上是自己在學習Linux的過程中的一部分總結,和大家共享。同時,也參考了其他人的博客,在參考列表中列出來了。

熱點內容
如何刪除下載的鬧鍾鈴聲安卓 發布:2025-02-04 22:03:35 瀏覽:656
死神腳本 發布:2025-02-04 21:57:03 瀏覽:166
phpposthtml 發布:2025-02-04 21:37:46 瀏覽:88
最新asp源碼 發布:2025-02-04 21:17:33 瀏覽:571
讓linux死機 發布:2025-02-04 20:48:08 瀏覽:141
單方塊生存伺服器里如何獲取岩漿 發布:2025-02-04 20:48:07 瀏覽:785
快速指數演算法 發布:2025-02-04 20:20:40 瀏覽:299
python在類中定義函數調用函數 發布:2025-02-04 20:14:47 瀏覽:596
安卓手機的壁紙是哪個 發布:2025-02-04 20:14:44 瀏覽:202
java發展前景 發布:2025-02-04 20:10:19 瀏覽:77