編寫簡單shell腳本
shell腳本就是一些命令的集合。
舉個例子,我想實現這樣的操作:
1)進入到/tmp/目錄;
2)列出當前目錄中所有的文件名;
3)把所有當前的文件拷貝到/root/目錄下;
4)刪除當前目錄下所有的文件。
簡單的4步在shell窗口中需要你敲4次命令,按4次回車。這樣是不是很麻煩?當然這4步操作非常簡單,如果是更加復雜的命令設置需要幾十次操作呢?那樣的話一次一次敲鍵盤會很麻煩。所以不妨把所有的操作都記錄到一個文檔中,然後去調用文檔中的命令,這樣一步操作就可以完成。其實這個文檔呢就是shell腳本了,只是這個shell腳本有它特殊的格式。《linux 就該這么學》
Shell腳本通常都是以.sh 為後綴名的,這個並不是說不帶.sh這個腳本就不能執行,只是大家的一個習慣而已。所以,以後你發現了.sh為後綴的文件那麼它一定會是一個shell腳本了。test.sh中第一行一定是 「#! /bin/bash」 它代表的意思是,該文件使用的是bash語法。如果不設置該行,那麼你的shell腳本就不能被執行。』#』表示注釋,在前面講過的。後面跟一些該腳本的相關注釋內容以及作者和創建日期或者版本等等。當然這些注釋並非必須的,如果你懶的很,可以省略掉,但是筆者不建議省略。因為隨著你工作時間的增加,你寫的shell腳本也會越來越多,如果有一天你回頭查看你寫的某個腳本時,很有可能忘記該腳本是用來干什麼的以及什麼時候寫的。所以寫上注釋是有必要的。另外系統管理員並非你一個,如果是其他管理員查看你的腳本,他看不懂豈不是很郁悶。該腳本再往下面則為要運行的命令了。
B. 編寫shell腳本的基本步驟是什麼
shell腳本只是命令操作的集合。就是把你手動交互輸入的命令放在一個文件里,自動依次執行。
步驟大約如下:
1.
在行首指定shell腳本的解析器,如
#!/bin/bash
2.
接著依次每行輸入shell的操作命令
3.
輸入完畢後,給文件設置可執行許可權並運行。
C. 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++)更改換行符格式!
D. 如何用xshell編寫腳本
1、在編寫shell腳本的時候一般會先查詢伺服器可以使用哪種腳本,並且查看伺服器使用的默認腳本方式是哪一種。
E. 如何編寫簡單的Shell腳本文件之Linux的基本操作
編寫shell腳本 首先你要有Linux命令的基礎,怎麼進入文件,怎麼執行文件,有什麼命令等等。
我們的shell 類型有很多,常見的shell環境有sh,bash,csh,zsh等等。在Linux的腳本中可以最常見的就是 sh或者shell。在shell腳本中最開始 要指定shell環境。於是乎我們有了shell的沙邦:
/bin/sh 或者/bin/bash
shell腳本的格式:shell腳本一般是以*.sh 為名字,在許可權上面是有可執行許可權x的也就是chmod u+x *.sh
命令的執行:3種:
sh 腳本路徑/腳本名
cd 腳本路徑 && ./腳本名
soure 腳本路徑/腳本
寫一個最簡單的腳本吧:
[root@linuxprobe ~]#vim 1.sh
/bin/sh
echo "this is my frist scripts,more and more linux ,you can read 《Linux就該這樣學》"
[root@linuxprobe ~]#chmod u+x 1.sh
[root@linuxprobe ~]#./1.sh
this is my frist scripts,more and more linux ,you can read 《Linux就該這樣學》
學習Linux需要多學多練
F. 如何編寫一個shell腳本
新建一個文件shell腳本一般用×.sh作為後綴當然勇氣他的也可以。打開終端輸入touch first.sh 新建一個名為first的shell腳本。
編寫一個簡單的linuxshell腳本
使用vim 編輯first.sh也可以用其他的文本編輯器,推薦使用vim
使用命令 vim first.sh打開,輸入i進入編輯模式。
編寫一個簡單的linuxshell腳本
我們寫入一個簡單的shell腳本,注意第一行的代碼解釋器的指定,這里使用的是/bin/bash/ 解釋器 也可用其他的根據個人情況自己選擇。
腳本解釋:
echo //顯示一串字元並自動換行
read NAME //從屏幕獲取一段字元,並賦予NAME
$NAME //取NAME變數的值
# //只用一個#表示注釋文本
編寫一個簡單的linuxshell腳本
文件寫完後按下esc鍵 退出插入模式,接著輸入:wq 保存文本並退出文本編輯。
編寫一個簡單的linuxshell腳本
輸入sh + 腳本名稱 運行腳本,或給文件可運行許可權 chmod +x 然後輸入./first.sh運行腳本。
G. 如何寫一個shell腳本
簡單的說,你把你在終端輸入的命令放在一個文件里,這個文件就成了shell腳本
比如你編輯一個文件叫 helloworld.sh
內容是
echo "Hello world!"
你把helloword.sh變成可執行的,就是在終端輸入
chmod +x helloworld.sh
然後運行
./helloworld.sh
你就成功滴寫好了一個shell腳本
H. 如何編寫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或其他)。
I. 幾個簡單的shell腳本編寫
#第一題
#!/bin/bash
if
[
!
-f
username.txt
];
then
echo
"未找到用戶文件,請重新創建username.txt"
fi
usernames=$(cat
username.txt)
for
username
in
$usernames
do
useradd
$username
echo
$username
|
passwd
--stdin
$username
chage
-d
0
$username
done
#第二題
#你可把腳本自行寫到crontab去
#!/bin/bash
declare
-i
disk_now=`df
/
|
grep
/dev
|
awk
'{print
$5}'
\
|
sed
's/%//'`
declare
-i
disk_warn=1
if
[
"$disk_now"
-ge
"$disk_warn"
];then
echo
"當前計算機/分區使用率超過80%,請及時處理"
|
\
mail
-s
"/分區使用告警"
root
fi
#第三題
#值的范圍就是那個100,你可以寫任意的整數
#!/bin/bash
read
-p
"請輸入值的范圍:"
nu
for
((i=1;
i<=$nu;
i=i+2))
do
echo
$i
done
#第四題,我沒弄明白題目,倍數?到底是幾的倍數?
#第五題
#你說用要CASE來寫,但只有兩個判斷,所以就用了ifelse
#!/bin/bash
declare
-i
nu=100
declare
-i
i=1
declare
-i
re
for
((;
i<=$nu;
i=i+1))
do
re=$i%7
if
[
"$re"
-eq
"0"
];
then
echo
$i
elif
[
$(echo
$i
|
grep
7)
];
then
echo
$i
fi
done
如有問題,可以追問。請採納,謝謝~