shell指令碼編寫小助手 by lustlost

2021-09-21 09:04:20 字數 1567 閱讀 3658

功能:

1.自動檢測否存在同名檔案,存在則提示使用者存在,並給出編輯,刪除後建立,和退出3個選項

2.自動新增指令碼版權資訊(有自定義和預設2種方式)

3. 自動檢測有無語法錯誤;如果有語法錯誤則提示使用者是否退出,不退出則開啟vim修改,直到修改正確為止

4.指令碼編寫成功後自動新增執行許可權

用法:執行指令碼後面新增指令碼名稱即可

#!/bin/bash  

#:name:lustlost - 1.0  

#:date:2012-7-17  

#:author:lustlost  

#:email:[email protected] 

if [ -e $1 ]; then  

read -p "file exists!!! input "e" to edit it, "d" to delete it and create a new file, "q" to quiet this operat: " operat

[ "$operat" == q ] && exit

[ "$operat" == e ] && vim $1

[ "$operat" == r ] && rm -rf $1

else  

if [ "$select" == y -o "$select" == y ]; then  

read -p "version number:" ver  

read -p "author:" author  

read -p "email address:" email 

cat>$1 <<

eof#!/bin/bash  

#:name:`basename $1` - $ver  

#:date:`date '+%y-%m-%d'`  

#:author:$author  

#:email:$email 

eof 

vim +8 $1  

else  

cat > $1<eof

#!/bin/bash  

#:name:`basename $1` - 1.0  

#:date:`date '+%y-%m-%d'`  

#:author:your name  

#:email:your email address 

eof  

vim +8 $1  

fi  

fi until bash -n $1 &>

/dev/null; do  

read -p "syntax error!! input q/q to exit,other to edit it: " com  

if [ $com

== q -o $

com== q ]; then  

exit  

else  

vim $1  

fi  

done 

chmod +x $1

echo "sh is create and it is right!!!" 

編寫Shell指令碼

獲取變數的方式 1 echo path 2 echo 3 echo path 引數的提取 引數的個數 n 第n個引數 0 當前指令碼名稱 取出所有引數 shift 引數左移 執行過程 2 編寫指令碼內容 單獨講解 3 新增執行許可權 chmod a x abc.sh 4 當前目錄執行 abc.sh ...

Shell 指令碼編寫

shell 指令碼與 windows dos 下的批處理相似,也就是用各類命令預先放入到乙個檔案中,方便一次性執行的乙個程式檔案,主要是方便管理員進行設定或者管理用的。但是它比 windows 下的批處理更強大,比用其他程式設計程式編輯的程式效率更高,它使用了 linux unix 下的命令。方法一...

shell指令碼編寫

echo echo n不換行輸出,echo e會處理特殊字元,比如有 n則會換行 printf 不自動換行輸出 print 自動換行輸出 傳遞到指令碼的引數個數 以乙個單字串顯示所有向指令碼傳遞的引數。指令碼執行的當前程序id號 後台執行的最後乙個程序的id號 與 相同,但是使用時加引號,並在引號中...