Posted on 2008-10-19 16:39
sailor 閱讀(155)
評論(0) 編輯 收藏 所屬分類:
linux
三、shell程序基礎
shell程序就是一個包含若干行shell或linux命令的文件。
執行shell程序文件有3種方法:
#chmod +x file
#sh file
#.file
在編寫shell時,第一行一定要指明系統需要哪種shell解釋自己shell程序
#!/bin/bash、#!/bin/csh、#!/bin/tcsh
1、變量表達式
格式:test conditions
字符串操作符
str1 == str2
str1 != str2
-n str
-z str
整數操作符
int1 -eq int2
int1 -ge int2
int1 -le int2
int1 -gt int2
int1 -lt int2
文件操作符
-d file
-f file
-r file
-s file
-w file
-x fiel
邏輯操作符
!expr
expr1 -a expr2
expr1 -o expr2
2、shell中的符號
1)單引號:單引號的字符作為普通字符出現
2)雙引號:由雙引號括起來的字符,除$, \\,', "外,其余字符為普通字符。
3)反引號:
1
$today=`date`
2
$echo Today is $today
3
4
Today is Mon Apr 15 16:20:13 CST 2008
5
$
4)注釋符:#
5)通配符:通配符用于模式匹配,如文件名匹配,路徑名匹配,字符串查找等。
* 匹配文件名中任何字符串,包括空格串
? 匹配文件名中的任何單個字符
[...] 匹配“[]”中所包括的任何字符
[!...] 匹配“[]”中非感嘆號“!”之后的字符
如[!0-9]表示非數字開頭的字符串
3、bash介紹
shell是一個命令語言解釋器。shell是用戶和linux內核之間的接口程序。在提示符下輸入的每個命令都由shell先解釋然后傳給linux內核。
shell在用戶成功地登陸進入系統后啟動,并始終作為用戶與系統內核的交互手段直至退出系統。系統上的每位用戶都有一個默認的shell。每個用戶的shell由系統中的password文件指定。該文件的路徑是/etc/password
1)、bash命令概要
alias: 設置alias別名
bg: 是一個被掛起的進程在后臺繼續進行
cd: 改變當前目錄
export:使變量的值對當前shell的所有子進程都可見
fc: 用來編輯歷史命令列表里的命令
fg: 使一個被掛機的進程在前臺繼續進行
help: 顯示bash內部命令的幫助信息
kill: 終止某個進程
pwd: 顯示當前工作目錄
unalias:刪除已定義的別名
2)、bash變量
EDITOR、FCEDIT: bash fc命令的默認編輯器
HISTORY: 用于存儲歷史命令文件
HISTSIZE: 歷史命令列表的大小
HOME: 當前用戶的用戶目錄
OLDPWD: 前一個工作目錄
PATH bash尋找可執行文件的搜索路徑
PS1 命令行的一級提示符
PS2 命令行的二級提示符
PWD 當前目錄
SECONDS 當前shell開始后所流逝的秒數
3)、輸入重定向
輸入重定向用于改變一個命令的輸入源。一些命令需要在命令行里輸入足夠的信息才能工作。
4)、輸出重定向
輸出沖定向使用戶能把一個命令的輸出重定向到一個文件里,而不是屏幕上。
5)、管道
管道可以把一系列命令連接起來。
6)、提示符
bash有兩級用戶提示符。第一級是經常看到的bash在等待命令輸入時的提示符。
7)、把bash shell的提示符改為指定的字符串。
當bash期待輸入更多的信息以完成命令時,顯示第二級提示符。默認的第二級提示符是>
8)、用戶化配置bash
為了保存這些用戶化配置,必須把他們保存到一個bash的初始化文件里。用戶能把任何想每次進入bash都執行的命令放到初始化文件建立。bash的初始化文件叫做profile。每個使用bash的用戶都有一個.profile文件在他的用戶目錄。bash在每次啟動時都讀取該文件,并執行所有包含的命令。