shell腳本vi
⑴ 關於linux命令行,shell命令,vi命令
shell並不是一個所謂在「終端」執行的東西,而是一個linux內核與用戶之間交互的界面,也可以理解成為是一個專業翻譯的角色。
vi不過就是一個文本編輯器罷了,就如同DOS或Windows系統中的Edit一樣,只不過這個vi文本編輯器的功能是可以靠添加模塊來擴展罷了。在unxu或linux中還有一個文本編輯器叫『emacs』,只不過這個編輯器更煩,更難於掌握。
其實linux並不難學,無非就是些常用的『命令』罷了,而且這些所謂的『命令』多半都是以源碼的方式存在在系統中的。所謂『命令行』不過就是調用這些源碼後,然後讓一個叫『shell』的『傢伙』解釋給linux內核去聽。而這些所謂的『命令』統統都在bin或是sbin的目錄下面。
linux在用戶登錄以後,自行會啟動一個shell,所有用戶必須通過shell才能與系統會話。linux的所謂窗口界面,只不過就是系統在用戶登錄後自行調用了一個shell腳本而啟動了Xwindow後的表象罷了。
所謂『命令行』其實就是shell的解釋命令。
⑵ Linux如何編寫shell腳本
一般以#!/bin/sh開頭(不是必須要寫,但一定要單獨一行),指定執行這個腳本的shell程序(也可以用#!/bin/zsh或其他),然後就是堆命令了。
Linux的shell腳本支持很多功能,加上Linux高度模塊化的命令,完全可以用shell腳本寫出復雜的程序。
以上只是簡單介紹如何開始寫shell腳本,如果要寫復雜的腳本,還需要深入學習相關知識(如if——fi、case——esac等結構)。
當然,還需要給腳本加上可執行許可權(chmod +x ./file.sh),否則可以用sh ./file.sh方式執行腳本(這里的sh是執行腳本所需shell,命令也可以是zsh ./file.sh或其他)。
整個shell腳本,其實就相當於你在終端輸入的一系列命令,如果想在shell里做什麼,就先想想在終端可以做什麼吧,字元的的連接,就是直接用 "" 雙引號,輸出,變數定義無 $ 符號,但是使用時一定要加上 $ 符號。
"=" 賦值符號,兩邊一定不能有空格,這和其他語言有區別,尤其是你還有自己代碼美觀風格時特別注意,否則會報語法錯誤!
for 中的數組內容是以 " " 空格分隔,而非 "," 逗號分格。
條件判斷 [ true ] 中括弧 後面需要有一個空格,但是兩個中括弧之間不能有空格如 [[ true ]]。
while 條件判斷可以用 () 括弧,也可以用 [[ ]] 中括弧。
如果用windows寫shell,一定要注意換行符格式 而非 , 需要藉助一些編輯器(如notepad++)更改換行符格式!
⑶ shell腳本cat和vi哪個好用
cat。
shell腳本cat好用,但是不能這么對比,因為cat是一個文本列印的命令,而vi是一個文本編輯器。
Shell腳本與Windows/Dos下的批處理相似,也就是用各類命令預先放入到一個文件中,方便一次性執行的一個程序文件,主要是方便管理員進行設置或者管理用的。
⑷ 怎樣用vi編輯器新建shell腳本Linux
新建腳本
vi shell.sh -->任意名稱即可
#! /bin/sh -->開始輸入腳本內容
。。。
。。。
保存退出
chmod a+x shell.sh -->給腳本shell.sh執行許可權 ./shell執行
或 sh shell.sh執行腳本
⑸ Vi編輯的shell腳本如何執行啊
建Shell腳本和寫C/C++源代碼都可以用vi編輯器(LINUX系統都會自帶),但shell腳本可以直接執行,C源代碼則必須經過編譯連接才能執行,通常用的都是GCC編譯器。
建立文本用如下命令:
vi filename
filename就是你要建立的文件名
打開編輯器後是一個命令模式,這時按一下『i』鍵即可進入文本編輯模式,寫完文本後按『esc』返回命令模式,再輸入「:wq」,回車,就保存了。詳細的可以自己上網查詢vi的用法。
要注意的一點是你要有寫許可權,不要都寫完了才發現無法保存,那就杯具了。
如果寫的是shell腳本,編輯完成後要打開執行許可權:
chmod 777 filename
然後才可以執行:
./filename
C源代碼的執行要復雜一些,你還是自己去看gcc的命令吧。
