導航:首頁 > 程序命令 > shell系統命令大全

shell系統命令大全

發布時間:2022-11-06 09:14:56

A. linux常用的shell有哪些

Linux系統的shell作為操作系統的外殼,為用戶提供使用操作系統的介面。它是命令語言、命令解釋程序及程序設計語言。

shell是用戶和Linux內核之間的介面程序,如果把Linux內核想像成一個球體的中心,shell就是圍繞內核的外層。當從shell或其他程序向Linux傳遞命令時,內核會做出相應的反應。

shell是一個命令語言解釋器,它擁有自己內建的shell命令集,shell也能被系統中的其他應用程序所調用。用戶在提示符下輸入的命令都由shell先解釋然後傳給Linux核心。

Linux常用的shell有哪些?

1、Bourne shell

Bourne shell是一個交換式的命令解釋器和命令編程語言。

Bourne shell是標準的UNIX shell,以前常被用來做為管理系統之用。大部分的系統管理命令文件,例如rcstart、stop與shutdown都是Bourne shell的命令檔,且在單一使用者模式下以root簽入時它常被系統管理者使用。Bourneshell是由AT$T發展的,以簡潔、快速著名,Bourne shell提示符號的默認值是$。

2、C shell

C shell是一種比Bourneshell更適合的變種shell,使用的是類C語言,csh是具有C語言風格的一種shell,其內部命令有52個,比較龐大。

C shell是柏克萊大學所開發的,且加入了一些新特性,如命令列歷程、別名、內建算術、檔名完成和工作控制。對於常在交談模式下執行shell的使用者而言,他們較喜歡用C
shell;但對於系統管理者而言,則較偏好以Bourne shell來做命令檔,因為Bourne shell命令檔比C shell命令檔來的簡單及快速。C shell提示符號的默認值是%。

3、korn shell

korn shell是一個Unix shell,它由貝爾實驗室的David Korn在二十世紀八十年代早期編寫。它完全向上兼容Bourne shell並包含了c shell的很多特性,例如貝爾實驗室用戶需要的命令編輯。

Korn shell是Bourne shell的超集,由AT&T的David korn所開發。它增加了一些特色,比C shell更為先進。Korn shell的特色包括了可編輯的歷程、別名、函式、正則表達式萬用字元、內建算術、工作控制、共作處理和特殊的除錯功能。Korn shell提示符號的默認值也是$。

B. shell命令excel文件另存

shell命令excel文件另存將Shell執行的結果直接重定向到shell。
1、執行某SQL的結果將結果導出到cs文件。
2、通過命令行執行解決方案。

C. linux shell 內置命令的作用,存放在哪裡

shell的內置指令,默認狀況下bash有50多個內置命令,一般存放在/sbin, /bin, /usr/bin,這幾個目錄中。命令詳情可查看 Linux命令大全 。

D. 求《Linux命令編輯器Shell編程實例大全》全文免費下載百度網盤資源,謝謝~

《Linux命令編輯器Shell編程實例大全》網路網盤pdf最新全集下載:
鏈接:https://pan..com/s/1KuGwNJWqX0jvV3RXtMVh4A

?pwd=vlzo 提取碼:vlzo
簡介:全書分上、中、下3篇,共20章,內容涵蓋了Linux簡介、Red Hat Linux 基礎知識、系統管理與設置、用戶和用戶組管理、磁碟管理、文件和目錄管理、備份與壓縮、網路管理、正則表達式、vim編輯器、emacs、grep命令、awk與sed、常用的文本編輯命令、Shell編程基礎、Shell變數、條件測試表達式、Shell的控制結構、函數以及Shell編輯實例。

本書內容豐富,語言通俗易懂,敘述深入淺出,適合於各層次Linux用戶。既可以作為各類院校相關專業的教材,也可作為Linux培訓的教程及廣大Linux愛好者的專業參考書。

E. 求助:LINUX常用SHELL命令

LINUX常用命令

1 文件與目錄操作命令

1.1文件內容查詢命令

grep、fgrep、egrep

CODE:[Copy to clipboard]語法:grep[選項][查找模式][文件名1,文件名2,……]
選項:

QUOTE:
-E 每個模式作為一個擴展的正則表達式對待
-F 每個模式作為一組固定字元串對待,而不作為正則表達式
-i 比較時不區分大小寫
-l 顯示首次匹配匹配串所在的文件名並用換行符將其分開。當在文件中多次出現匹配串時,不重復顯示次文件名;
-x 只顯示整行嚴格匹配的行
1.2文件查找命令 find、locate

語法:

CODE:[Copy to clipboard]find 起始目錄 尋找條件 操作
以名稱和文件屬性查找

QUOTE:
-name『字串『 查找文件名匹配所給字串的所有文件,字串內可用通配符*、?、[]。
-lname『字串『 查找文件名匹配所給字串的所有符號鏈接文件,字串內可用通配符*、?、[]。
-gid n 查找屬於ID號為n的用戶組的所有文件。
-uid n 查找屬於ID號為n的用戶的所有文件。
-group『字串『 查找屬於用戶組名為所給字串的所有的文件。
-user『字串『 查找屬於用戶名為所給字串的所有的文件。
-path『字串『 查找路徑名匹配所給字串的所有文件,字串內可用通配符*、?、[]。
-perm 許可權 查找具有指定許可權的文件和目錄,許可權的表示可以如711、644。
-type x 查找類型為 x的文件,
語法:locate 相關字

1.3文件的復制、刪除和移動命令

文件復制命令

CODE:[Copy to clipboard]cp [選項] 源文件或目錄 目標文件或目錄
選項:

QUOTE:
- a 通常在拷貝目錄時使用
-d 拷貝時保留連接
-f 刪除已經存在的目標文件而不提示
-i 和f選項相反
-p 此時cp除復制源文件內容外,還將其修改的時間和訪問許可權也復制到新文件中
-r 若給出的源文件是一目錄文件,此時cp將遞歸復制該目錄下的所有的子目錄和文件,此時目標文件必須為一個目錄名;
-l 不作拷貝,只是鏈接文件
文件移動命令

CODE:[Copy to clipboard]mv[選項] 源文件或目錄 目標文件或目錄

QUOTE:
-i 互動式操作
-f 禁止互動式操作
文件刪除命令

CODE:[Copy to clipboard]rm[選項] 文件…

QUOTE:
-f 忽略不存在的文件,從不給出提示
-r 指示rm將參數中列出的全部目錄和子目錄均遞歸地刪除
-i 進行互動式刪除
1.4文件鏈接命令

CODE:[Copy to clipboard]ln [選項] 目標 [鏈接名] 或 ln [選項] 目標 目錄

QUOTE:
選項:
- s 建立符號鏈接
1.5目錄的創建和刪除命令

mkdir 創建一個目錄
語法:

CODE:[Copy to clipboard]mkdir [選項] dirname
選項:
- m 對新建目錄設置存取許可權
-p 可以是一個路徑名稱。此時若路徑中的某些目錄尚不存在,加上此選項後,系統將自動建立好那些尚不存在的目錄,即一次可以建立多個目錄。

rmdir 刪除空目錄
語法:

CODE:[Copy to clipboard]rmdir [選項] dirname

QUOTE:
選項:
- p 遞歸刪除目錄dirname,當子目錄刪除後其父目錄為空時,也一同被刪除。
1.6改變工作目錄,顯示目錄內容命令

1、改變工作目錄:

CODE:[Copy to clipboard]cd [directory]
2、顯示當前工作的目錄的絕對路徑:

CODE:[Copy to clipboard]pwd
3、顯示目錄內容:

CODE:[Copy to clipboard]ls [選項] [目錄或是文件]

QUOTE:
選項:
- a 顯示指定目錄下所有子目錄與文件,包括隱藏文件;
-c 按照文件的修改時間排序
-C 分成多列顯示各項
-d 如果參數是目錄,只顯示其名稱而不顯示其下的個文件
-F 在目錄名後面標記「/」,可執行文件後面標記「*」,符號鏈接後面標記「@」,管道(或FIFO)後面標記「|」,socket文件後面標記「=」。
-l 以長格式來顯示文件的詳細信息
-L 若指定的名稱為一個符號鏈接,則顯示鏈接所指向的文件
-t 顯示時按修改時間而不是名字排序
-u 顯示時按文件上次存取的時間而不是名字排序
4、改變文件或目錄的訪問許可權命令

CODE:[Copy to clipboard]chmod [who] [+| - | = ] [mode] 文件名?

QUOTE:
Who選項:
- u表示用戶,即文件和目錄的所有者
-g表示同組用戶
-o(other)表示其他用戶
-a (all)表示所有用戶

QUOTE:
操作符號:
+ 添加某個許可權 - 取消某個許可權
= 賦予給定許可權並取消其他所有的許可權(如果有的話)

QUOTE:
mode 選項:
- r 可讀
-w 可寫
-x 可執行

CODE:[Copy to clipboard]chgrp [-R] group filename? 改變目錄或文件所屬的組

CODE:[Copy to clipboard]chown [-Rv] 用戶或組 文件
1.7備份與壓縮命令

1、tar命令 為文件和目錄創建檔案
語法:

CODE:[Copy to clipboard]tar [主選項+輔助選項] 文件或者目錄

QUOTE:
u 主選項
c 創建新的檔案文件。如果用戶想備份一個目錄或是一些文件,則選此項
r 把要存檔的文件追加到檔案文件的末尾
t 列出檔案文件的內容,查看已經備份了哪些文件;
u 更新文件
x 從檔案文件中釋放文件;
u 輔助選項
b 該選項為磁帶機設定的,其後跟一位數字,用來說明區塊的大小,系統預設值為20
f 使用檔案文件或設備,這個選項通常是必選的
k 保存已經存在的文件。例如把某個文件還原,在還原的過程中,遇到相同的文件,不會進行覆蓋;
m 在還原文件時,把所有文件的修改時間設定為現在;
M 創建多卷的檔案文件,以便在幾個磁碟中存放;
v 詳細報告tar處理的文件信息
w 每一步都要求確認
z 用gzip來壓縮/解壓縮文件
2、gzip命令 壓縮/解壓縮命令
語法:

CODE:[Copy to clipboard]gzip [選項] 壓縮(解壓縮)的文件名

QUOTE:
選項:
-c 將輸出寫到標准輸出上,並保留原有文件
-d 將壓縮文件解壓
-l 顯示每個壓縮文件的詳細信息
-r 遞歸式地查找指定目錄並壓縮其中的所有文件或者是解壓縮
-t 測試、檢查壓縮文件是否完整
-v 對每一個壓縮和解壓的文件,顯示文件名和壓縮比
3、unzip 命令
用MS windows下的壓縮軟體winzip壓縮的文件在linux系統下展開
語法:

CODE:[Copy to clipboard]unzip [選項] 壓縮文件名.zip

QUOTE:
選項:
-x 文件列表 解壓縮文件,但不包括指定的file文件
-v 查看壓縮文件目錄,但不解壓
-t 測試文件有無損壞 ,但不解壓
-d 目錄 將壓縮文件解到指定目錄下
-z 只顯示壓縮文件的註解
-n 不覆蓋已經存在的文件
-o 覆蓋已經存在的文件且不要求用戶確認
-j 不重建文檔的目錄結構,把所有文件解壓到同一目錄下
1.8在LINUX環境下運行DOS命令

linux系統提供了一組稱為mtools的可移植工具,可以讓用戶輕松地從標準的DOS軟盤上讀寫文件和目錄。

QUOTE:
mcd 目錄名 改變MSDOS目錄
m 源文件 目標文件 在MSDOS和UNIX之間復制文件;
mdel 目錄名 刪除MSDOS目錄
mdir 目錄名 顯示MSDOS目錄
mformat 驅動器號 在低級格式化的軟盤上創建MSDOS文件系統
rnlabel 驅動器號 產生MSDOS卷標
mmd 目錄名 刪除MSDOS目錄
mren 源文件 目標文件 重新命名已存在的MSDOS文件
mtype 文件名 顯示MSDOS文件的內容
2 設備管理命令

1)linux採用下面的形式定義一個IDE硬碟:

CODE:[Copy to clipboard]/dev/hd[drive][partition]
2)SCSI硬碟使用同樣的機製表示:

CODE:[Copy to clipboard]/dev/sd[drive][partition]
3)對於一般的LINUX分區,可以用mkfs將其格式化並生成文件系統,命令如下:

CODE:[Copy to clipboard]mk2fs –c <partition>; <size>;
4)裝載文件系統:

CODE:[Copy to clipboard]mount –t ext2 [-o optioms] partition mountpiont
其中,

QUOTE:
-t為指定裝載文件系統的類型;
-o指定一些選項,如只讀ro,可讀可寫rw等等;
partition定義分區名稱;
mountpiont定義文件系統被裝載的目錄名稱。
5)裝載CD-ROM文件系統:

CODE:[Copy to clipboard]mount –t iso9660 –r /dev/cdrom /mnt/cdrom
6)裝載軟碟機文件系統:

CODE:[Copy to clipboard]mount –t msdos –rw /dev/fd0 /dev/mnt/floppy
7)卸載文件系統

CODE:[Copy to clipboard]umount /mnt/cdrom
磁帶設備的安裝要注意以下幾點:

QUOTE:
1、 首先要選擇一個唯一的SCSI ID號,然後再將設備鏈接到適當的位置

2、 選擇驅動程序。

3、 生成設備文件。SCSI磁帶設備的主要設備號是9,次要設備號是0。設備文件名通常是/dev/nrst0(不支持回繞的磁帶設備)或/dev/nst0(支持回繞的磁帶設備)

用 ls /dev/*rst*
檢查磁帶設備文件是否存在,如果不存在,用
mknod –m 666 /dev/nrst0 c 9 9
mknod –m 666 /dev/rst0 c 9 0 生成

4、 可以對塊長度、緩存、磁帶密度等參數進行一些設置,例如
mt setblk 20 將塊長度指定為20
mt setblk 0 指定塊程度沒有限制

5、 通過檢查系統的啟動信息可以確定系統是否識別了新的磁帶設備。用dmesg命令,查看是否有以下類似的信息:
aha274x:target 4now synchronous at 4.4Mb/s
Vendor:TANDBERG Model:TDC 3800 Rev: =05:
Type: Sequential-Access ANSI SCSI revision: 02
Detected scsi tape st0 at scsi0, id4, lun0
Scsi : detected 1 SCSI tape 1 SCSI crom 1 SCSI disk total
3 軟體包管理命令

3.1軟體安裝的步驟

在LINUX系統上安裝軟體的步驟有:

QUOTE:
1、 查找所要安裝軟體的源文件
2、 把源文件解開放到一個目錄中,命令如下:
tar zxvf <源文件名>;
3、 針對本操作系統配置源文件。可以是編輯make文件或其他文件,也可能是運行該軟體自帶的自動配置工具,如./configure
4、 make源文件,通常是運行make命令,即執行 make
5、 安裝二進制文件和其他支撐文件,運行命令: make install
6、 最後,完成所有其他必須的配置
3.2軟體包管理命令

QUOTE:
rpm –ivh <軟體包>;
// 安裝指定的軟體包,並在安裝過程中用#表示安裝的進度
rpm –Uvh <軟體包>;
// 更新一個已經存在的或還沒安裝好的軟體包,並刪除所有該軟體包的舊版本。
rpm –e
//卸載一個rpm軟體包
rpm –qa
// 查看系統中已經安裝的軟體包
rpm –q <軟體包>;
// 查看系統中某個軟體包的版本號;
rpm –qlp <軟體包>;
//列出某個軟體包中的所有文件
rpm –qf <軟體包>;
//找出一個文件屬於哪個軟體包
4 LINUX系統常用命令

4.1 與系統管理有關的命令

Wall (Write All)

QUOTE:
對全部已 登錄的用戶發送信息,用戶可以先反要發送的信息寫好存入一個文件中,然後輸入:
# wall < FileName

例:Wall 『Thank you !』
Write
向某一用戶發送信息。
Write xxq
hello
輸入Ctrl+C組合即可終止
Shutdown命令

CODE:[Copy to clipboard]Shutdown [選項] [時間] [警告信息]

QUOTE:
-k 並不真正關機,而只是發出警告信息給所有的用戶。
-r 關機後立即重新啟動。
-h 關機後不重新啟動。
-f 快速關機,啟動時跳過fsck。
-n快速關機,不經過init程序。
-c 取消一個已經運行的shutdown
例:系統馬上關機:Shutdown –h now
Free命令
查看當前系統內存的使用情況,

CODE:[Copy to clipboard]Free [-b] [-k] [-m]

CODE:[Copy to clipboard]-b 以位元組為單位顯示。
-k 以K位元組為單位顯示。
-m 以M位元組為單位顯示。
Uptime

QUOTE:
顯示系統已經運行了多長的時間:現在時間、系統已經運行的時間、目前有多少登錄用戶、系統在過去的1分鍾、5分鍾和15分鍾內的平均負載。
4.2與用戶有關的命令

Passwd命令
設置、更換用戶口令。

CODE:[Copy to clipboard]Passwd [用戶名]
Su
使一個普通的用戶具有超級用戶的權利,離開可用EXIT命令。

4.3其它命令

Echo命令
在顯示器上顯示一段文字,一般起到一個提示的作用。

CODE:[Copy to clipboard]echo [-n] 字元串
Cal命令
顯示某年某月的日歷。

CODE:[Copy to clipboard]cal [選項] [月[年]]

QUOTE:
選項的含義:
-j 顯示也給定月中的每一天是一年中的和幾天(從1月1日算起)。
-y 顯示也整年的日歷。
Date命令
date命令的功能是顯示和設置系統日期和時間。

4.4磁碟管理

磁碟空間管理

df命令
檢查文件系統的磁碟空間佔用局部。

CODE:[Copy to clipboard]Df [選項]

QUOTE:
-a 顯示所有文件系統的磁碟使用情況,包括0塊(block)的文件系統,如/proc文件系統。
-k 以K位元組為單位顯示。
-i 顯示i節點信息,而不是磁碟塊。
- t 顯示各指定類型的文件系統的磁碟空間使用情況。
-x 列出不是某一指定類型文件系統的磁碟窨使用情況(與t相反)。
-T 顯示文件系統類型。
命令
的英文原意為disk usage,含義為顯示磁碟空間的使用情況。功能是統計目錄(或文件)所佔磁碟空間的大小。

CODE:[Copy to clipboard] [選項] [Names…]

QUOTE:
-s 對每人Names 參數只給也佔用的數據塊總數。
-a 遞歸地顯示指定目錄中各文件用子孫目錄中的各文件佔用的數據塊總數。
-b 以位元組為單位列也磁碟窨使用情部(預設以K位元組為單位)
-k 以1024位元組為單位列也磁碟空間使用情況。
-c 最後再加上一個總計(系統預設)
-l 計算所有的文件大小,對硬鏈接文件,則計算多次。
-x 跳過在不同文件系統上的目錄不予統計。
dd命令
把指定的輸入文件拷貝到指定的輸出文件中,並且在拷貝的過程中可以進行格式轉換。語法:

CODE:[Copy to clipboard]dd 〔選項〕

QUOTE:
if =輸入文件(或設備名稱)。
of =輸出文件(或設備名稱)。
ibs = bytes 一次讀取bytes位元組,即讀入緩沖區的位元組數。
skip = blocks 跳過讀入緩沖區開頭的ibs*blocks塊。
obs = bytes 一次寫入bytes位元組,即寫 入緩沖區的位元組數。
bs = bytes 同時設置讀/寫緩沖區的位元組數(等於設置obs和obs)。
cbs = bytes 一次轉換bytes位元組。
count = blocks 只拷貝輸入的blocks塊。
conv = ASCII 把EBCDIC碼轉換為ASCII碼。
conv = ebcdic 把ASCII碼轉換為EBCDIC碼。
conv = ibm 把ASCII碼轉換為alternate EBCDIC碼。
conv = blick 把變動位轉換成固定字元。
conv = ublock 把固定們轉換成變動位
conv = ucase 把字母由小寫變為大寫。
conv = lcase 把字母由大寫變為小寫。
conv = notrunc 不截短輸出文件。
conv = swab 交換每一對輸入位元組。
conv = noerror 出錯時不停止處理。
conv = sync 把每個輸入記錄的大小都調到ibs的大小(用ibs填充)。
fdformat命令
低級格式化軟盤。

CODE:[Copy to clipboard]format [-n] device

QUOTE:
-n 格式化後不做檢驗
4.5常用的網路命令

FTP命令

Telnet命令。

Netstat命令

QUOTE:
-a 顯示所有的scoket,包括正在監聽和。
-c 每隔1秒就重新顯示一遍,直到用戶中斷它。
-i 顯示所有網路介面的信息,格式同」ifconfig –e」
-n 以網路IP地址代替名稱,顯示也網路連接情形。
-r 顯示核心路由表,格式同」route –e:。
-t 顯示TCP協議的連接情況。
-u 顯示UDP協議的連接情況。
-v 顯示正在進行的工作。
nslookup命令。

finger命令,功能是查詢用戶的信息。

ping命令。
(用戶和組的管理可以使用工具:TurboUserCfg或是XturboUserCfg。)

4.6有關進程的命令。

進程和啟動

CODE:[Copy to clipboard]at [-V] [-q] [-f文件名] [-mldbv]時間

at –c 作業 [作業….]

AT命令啟動的進程系統只執行一次。

batch [-V] [-q 隊列] [-f 文件名] [-mv] [時間]
在系統負載較小時,資源比較空閑時執行。

cron命令
按一定的時間間隔執行命令。

crontab命令
用於安裝、刪除或列出用於驅支cron後台進程的表格。
進程查看

CODE:[Copy to clipboard]who命令。

w命令
是一個比who命令更強大的命令
w –[husfV] [user]
-h 不顯示標題。
-u 當列出當前進程和CPU時間時忽略用戶名。
-s 使用短模式。不顯示登錄時間JCPU和PCPU時間。
-f 切換顯示FROM項,也就是遠程主機名項。
-V 顯示版本信息。

user 只顯示指定用戶的情況。

ps命令。
-e 顯示所有進程。
-f 全格式
-h 不顯示標題。
-l 長格式。
-w 寬輸出。
a 顯示終端上所有進程,包括其他用戶的進程。
r 只顯示正在運行的進程。
x 顯示沒有控制終端的進程。
top 命令
動態顯示系統當前的進程和其他狀況。
5系統的啟動過程。

5.1初始啟動

在PC機啟動時,BIOS從指定的啟動設備中讀入「主引導記錄」(MBR)。MBR的格式是:
地址偏移量 內容 大小
+00 h 可執行的代碼(啟動模塊) 可能變化
+1BE h 第一分區表項 16位元組
+1CE h 第二分區表項 16位元組
+1DE h 第三分區表項 16位元組
+1EE h 第四分區表項 16位元組
+1FE h 可執行的標記(AA55 h) 2位元組

啟動模塊包含足以裝入操作系統的代碼,或者是第二步的載入代碼的位置。啟動模塊需要使用BIOS調用來從磁碟裝入數據,而這些中斷調用,如INT 13h等,限制了最大磁碟柱面號為1023。這也就是說啟動模塊需要載入的一切內容,如初始內存磁碟、內核、啟動的時間信息等,必須存放在1024個柱面以內。
在MBR中只有四個分區表項,每個表項的格式如下:

地址偏移 內容 大小
+00h 分區狀態:00代表非啟動分區,80h代表啟動分區 1位元組
+01h 分區的起始位置 磁頭 1位元組
+02h 分區的起始位置 柱面和扇區 1位元組
+04h 分區的類型 1位元組
+05h 分區的結束位置 磁頭 1位元組
+06h 分區的結束位置 柱面和扇區 1位元組
+08h 在主引導區和本分區的第一個扇區間的扇區數目 4位元組
+0Ch 分區內的扇區數目 4位元組

5.2 Linux的啟動過程

1啟動的命令行參數

在Linux啟動時,它處理所有傳遞給它的命令行參數。這可以影響Linux的運行方式。命令行參數包括:

QUOTE:
mem=xxxM:定Linux可以使用的內存大小。這在用戶的計算機系統有超過64MB的內存時才需要。因為從前的主板只對第一個64MB內存進行緩存,使用超過64MB的內存會使整個計算機的性能下降,所有內存均按無緩存的速度運行。
single:使Linux按單用戶方式啟動,預設方式是多用戶方式。
root=/dev/xxx:指定Linux要安裝為根文件系統的設備。
init=<file>;:指定作為初始化進程的文件。
initrd=<dev>;:指定作為初始內存磁碟的設備。
ro:指定根文件系統為只讀。
rw:指定根文件系統為可讀可寫。
2 Init進程

在內核初始化自身和找到的硬體設備後,在後台啟動進程init(/sbin/init),init進程號1運行。
在UNIX世界中有許多啟動過程的版本,一些是基於系統V,一些是基於BSD。大多數Linux版本使用系統V的實現方法,在這里描述的就是這樣。
init是由文件/etc/inittab內容和功能控制的,隨啟動模式是單用戶或多用戶而不同。

QUOTE:
單用戶模式:init進程忽略/etc/inittab文件,在執行少數幾個腳本程序後調用/dev/console shell。這樣,用戶就可以有了一個shell,而且可以執行一定限度的任務。
多用戶模式:init進程把系統帶入/etc/inittab文件指定的運行級別。Init通過標準的Linux方法進入一個指定的進行級別。
3.進行級別

Linux與其他UNIX操作系統一樣,可以任何時刻處於任何一個運行級別。這些運行級別提供的功能不同,為主要是由於其運行的服務方程序(後台daemon)的不同造成的。Linux共有6種運行級別。

QUOTE:
0:關閉計算機或終止計算機運行,這個級別就是系統停止運行。
1:單用戶啟動級別,系統只有一個用戶,就是root,該用戶在控制台登錄。
2:多用戶運行級別,但無網路功能。在這個運行級別,網路功能沒有啟動,但是系統允許多個用戶登錄,可以通過虛擬控制台或串列線路。
3:多用戶模式,有網路功能。在這個運行級別,所有標准網路服務均被啟動。
4:目前沒有實現。
5:X11運行級別,在這個運行級別,X伺服器軟體運行,提供圖形界面的登錄方式。
6:系統重新啟動。
查詢當前運行級別:runlevel;

4在啟動過程中運行的腳本
在init進程運行時,它負責查看預設的運行級別,並進入該運行級別。這是通過運行在/etc/rc.d/rcX.d目錄下的腳本程序來實現的,其中X代表運行的級別,即一個運行級別對應一個目錄。不同的字母開頭的文件有不同的作用。其中:
以K開頭的腳本程序是系統離開某個運行級別時執行的,作用是停止某種服務。當系統從某個支持級別變為其他級別時,首先要進行原運行級別所對應的所有K程序。
以S開頭的腳本程序是系統進入某個運行級別時所執行的,作用是啟動某種服務。當系統改變為某個運行級別時,就要運行新運行級別所對應的所有S程序。

5增加啟動腳本程序
用戶可能有一些特定的硬體設備要初始化,或需要在系統啟動時初始化一些其他應用程序,用戶可以增加自己的初始化腳本程序來完成這些工作。通常步驟是:
復制一個已經存在的腳本,這樣可以得到一個通用的框架格式。
修改這個腳本,以完成自己的需求,要注意使程序可以處理啟動和關閉的參數,盡管可能關閉處理什麼也不需要干。
把這個肢本拷貝到/etc/rc.d/init.d目錄下,命名為」serv」。
按下面的方法在相應的目錄下建立運行控制鏈接:

CODE:[Copy to clipboard]ln –s ../init.d/serv/etc/rc.d/rc3.d/s99 serv
進行測試。

6 LILO和其他的啟動模塊
要啟動Linux,啟動模塊是必須的。一般用於Linux的啟動模塊是LILO,LILO用自己的主引導區代替一般的主引導區。LILO可以通過修改/etc/lilo.conf文件內容來進行配置,對引導區內容的更新通過lilo命令來完成。
下面給也了一個裝有DOS,TurboLinux3.4.0和RedHat 5.2系統的計算機的lilo.conf文件。在例子中的數字標號是用戶加上去並要在文中詳細解釋的。

CODE:[Copy to clipboard]# more /etc/lilo.conf
boot=dev/had
map=/boot/map
instll/boot/boot.b
prompt
#表示啟動盤是/dev/had,這是主IDE硬碟。
timeout=50
#表示等待用戶輸入的時間是50秒。
default=TL3.4
other=dev/hda1
#表示如果在上述的時間內沒有輸入,預設的啟動系統是TL3.4,即TurboLinux 3.4.0
label=dos
table=dev/had
#表示如果在LILO提示用戶輸入啟動系統時,用戶按了<Tab>;鍵,各個系統將以label的內容顯示出來,供用戶選擇。
image=/mnt/tl3.4/boot/vmlinuz
label=TL3.4
root=/dev/hda3
read-only
TurboLinux的啟動文件,/mnt/tl3.4/boot/vmlinuz被確定,根文件系統在/dev/hda3,根文件系統是只讀方式的。

CODE:[Copy to clipboard]image=/mnt/rh5.2/boot/vmlinuz-2.0.36-0.7
label=RH5.2
root=/dev/hda4
read-only
RedHat的啟動文件,/mnt/rh5.2/boot/vmlinuz-2.0,36-0.7被確定,根文件系統在/dev/hda4,根文件系統可讀寫。

F. Xshell本地指令大全

很多軟體在使用過程中都有快捷鍵,當然xshell也有,有因為xshell是一款 安全終端模擬軟體 ,所以與普通的軟體有絲絲的區別,它的快捷鍵是以指令形式展現的。

圖1:xshell本地指令表現形式

一般來講,Xshell提示在未連接遠程主機的狀態下出現在終端屏幕上。連接會話後可按「Ctrl+Alt+]」以轉出本地提示。如要返回到遠程主機模式輸入「exit」或按「Ctrl+D」即可。

可使用如下指令:

|

指令

|

說明

|
| --- | --- |
|

help

?

|

在終端窗口顯示指令目錄。

|
|

new

|

打開新建會話屬性對話框。

|
|

open [ session ]

|

已指定「 session 」時連接到相應會話,未指定時打開會話對話框。

|
|

edit [ session ]

|

已指定「 session 」時打開相應會話的會話屬性對話框,未指定時打開默認會話的會話屬性對話框。

|
|

list

|

顯示當前作業directory可使用的會話相關信息和directory目錄。

|
|

cd

|

更改當前作業的directory。

|
|

clear

|

清除畫面、地址欄的歷史記錄、本地Shell命令提示的命令歷史記錄。

|
|

exit

quit

|

退出Xshell會話或返回到遠程主機。

|
|

ssh [ user @] host [ port ]

|

以ssh協議進行連接。

|
|

sftp [ user @] host [ port ]

|

以sftp協議進行連接。

|
|

telnet [ user @] host [ port ]

|

以telnet協議進行連接。

|
|

rlogin [ user @] host [ port ]

|

以rlogin協議進行連接。

|
|

ftp [ user @] host [ port ]

|

以ftp協議進行連接。

|
|

ipconfig

|

執行Windows的ipconfig命令。

|
|

ping host

|

執行Windows的ping命令。

|
|

tracert host

|

顯示至host的數據包路徑。

|
|

netstat

|

執行Windows의netstat命令。

|
|

nslookup

|

執行Windows의 nslookup 命令。

|

G. 常見的shell都有哪些

三種主要的 Shell 與其分身

在大部份的UNIX系統,三種著名且廣被支持的shell 是Bourne shell(AT&T shell,在 Linux 下是BASH)、C shell(Berkeley shell,在 Linux 下是TCSH)和 Korn shell(Bourne shell的超集)。這三種 shell 在交談(interactive)模式下的表現相當類似,但作為命令文件語言時,在語法和執行效率上就有些不同了。

Bourne shell 是標準的 UNIX shell,以前常被用來做為管理系統之用。大部份的系統管理命令文件,例如 rc start、stop 與shutdown 都是Bourne shell 的命令檔,且在單一使用者模式(single user mode)下以 root 簽入時它常被系統管理者使用。Bourne shell 是由 AT&T 發展的,以簡潔、快速著名。 Bourne shell 提示符號的默認值是 $。

C shell 是柏克萊大學(Berkeley)所開發的,且加入了一些新特性,如命令列歷程(history)、別名(alias)、內建算術、檔名完成(filename completion)、和工作控制(job control)。對於常在交談模式下執行 shell 的使用者而言,他們較喜愛使用 C shell;但對於系統管理者而言,則較偏好以 Bourne shell 來做命令檔,因為 Bourne shell 命令檔比 C shell 命令檔來的簡單及快速。C shell 提示符號的默認值是 %。

Korn shell 是Bourne shell 的超集(superset),由 AT&T 的 David Korn 所開發。它增加了一些特色,比 C shell 更為先進。Korn shell 的特色包括了可編輯的歷程、別名、函式、正規表達式萬用字元(regular expression wildcard)、內建算術、工作控制(job control)、共作處理(coprocessing)、和特殊的除錯功能。Bourne shell 幾乎和 Korn shell 完全向上兼容(upward compatible),所以在 Bourne shell 下開發的程序仍能在 Korn shell 上執行。Korn shell 提示符號的默認值也是 $。在 Linux 系統使用的 Korn shell 叫做 pdksh,它是指 Public Domain Korn Shell。

除了執行效率稍差外,Korn shell 在許多方面都比 Bourne shell 為佳;但是,若將 Korn shell 與 C shell 相比就很困難,因為二者在許多方面都各有所長,就效率和容易使用上看,Korn shell 是優於 C shell,相信許多使用者對於 C Shell 的執行效率都有負面的印象。

在shell 的語法方面,Korn shell 是比較接近一般程序語言,而且它具有子程序的功能及提供較多的資料型態。至於 Bourne shell,它所擁有的資料型態是三種 shell 中最少的,僅提供字元串變數和布爾型態。在整體考量下 Korn shell 是三者中表現最佳者,其次為 C shell,最後才是 Bourne shell,但是在實際使用中仍有其它應列入考慮的因素,如速度是最重要的選擇時,很可能應該採用 Bourne shell,因它是最基本的 shell,執行的速度最快。
作者: benny_feng 發布日期: 2006-10-17
tcsh 是近幾年崛起的一個免費軟體(Linux 下的C shell 其實就是使用 tcsh)執行,它雖然不是UNIX 的標准配備,但是從許多地方您都可以下載到它。如果您是 C shell 的擁護者,筆者建議不妨試試 tcsh,因為您至少可以將它當作是 C shell 來使用。如果您願意花點時間學習,您還可以享受許多它新增的優越功能,例如:

1. tcsh 提供了一個命令列(command line)編輯程序。

2. 提供了命令列補全功能。

3. 提供了拼字更正功能。它能夠自動檢測並且更正在命令列拼錯的命令或是單字。

4. 危險命令偵測並提醒的功能,避免您一個不小心執行了rm* 這種殺傷力極大的命令。

5. 提供常用命令的快捷方式(shortcut)。

bash 對 Bourne shell 是向下兼容(backward compatible),並融入許多C shell 與Korn shell 的功能。這些功能其實 C shell(當然也包括了tcsh)都有,只是過去 Bourne shell 都未支持。以下筆者將介紹 bash 六點重要的改進(詳細的使用說明筆者會在以後的章節介紹):

1. 工作控制(job contorl)。bash 支持了關於工作的訊號與指令,本章稍後會提及。

2. 別名功能(aliases)。alias 命令是用來為一個命令建立另一個名稱,它的運作就像一個宏,展開成為它所代表的命令。別名並不會替代掉命令的名稱,它只是賦予那個命令另一個名字。

3. 命令歷程(command history)。BASH shell 加入了C shell 所提供的命令歷程功能,它以 history 工具程序記錄了最近您執行過的命令。命令是由 1 開始編號,默認值為500。history 工具程序是一種短期記憶,記錄您最近所執行的命令。要看看這些命令,您可以在命令列鍵入 history,如此將會顯示最近執行過之命令的清單,並在前方加上編號。

這些命令在技術上每個都稱為一個事件。事件描述的是一個已經採取的行動(已經被執行的命令)。事件是依照執行的順序而編號,越近的事件其編號碼越大,這些事件都是以它的編號或命令的開頭字元來辨認的。history 工具程序讓您參照一個先前發生過的事件,將它放在命令列上並允許您執行它。最簡單的方法是用上下鍵一次放一個歷程事件在您的命令列上;您並不需要先用 history 顯示清單。按一次向上鍵會將最後一個歷程事件放在您的命令列上,再按一次會放入下一個歷程事件。按向下鍵則會將前一個事件放在命令列上。

H. shell命令有哪些保留字

Bash Shell內建命令和保留字

命令

含義

!

保留字,邏輯非

:

不做任何事,只做參數展開

.

讀取文件並在shell中執行它

alias

設置命令或命令行別名

bg

將作業置於後台運行

bind

將關鍵字序列與readline函數或宏捆綁

break

保留字,跳出for、while、until、select循環

builtin

調用命令的內建命令格式,而禁用同名的函數。或者同名的擴展命令

case

保留字,多重選擇

cd

切換當前工作目錄

command

找出內建和外部命令;尋找內建命令而非同名函數

continue

保留字,到達下次for、while、until、select循環

declare

聲明變數定義變數屬性

dirs

顯示當前存儲的列表

disown

將作業從列表中移除

do

保留字,for、while、until、select循環的一部分

done

保留字,for、while、until、select循環的一部分

echo

列印參數

elif

保留字,if結構的一部分

else

保留字,if結構的一部分

enable

開啟和關閉內建命令

esac

保留字,case的一部分

eval

將參數作為命令再次處理一遍

exec

以特定程序取代shell或為shell改變I/O

exit

退出shell

export

將變數聲明為環境變數

fc

與歷史命令一起運行

fg

將作業置於後台運行

fi

保留字,if循環的一部分

for

保留字,for循環的一部分

function

定義一個函數

getops

處理命令行選項

hash

記錄並指定命令的路徑名

help

顯示內建命令的幫助信息

history

顯示歷史信息

if

保留字,if循環的一部分

in

保留字,case、for、select循環的一部分

jobs

顯示後台運行的作業

kill

向進程傳送信號

let

使變數執行算術運算

local

定義局部變數

logout

從Shell中注銷

popd

從目錄棧中彈出目錄

pushd

將目錄壓入棧

pwd

顯示當前工作目錄

read

從標准輸入中讀取一行

readonly

將變數定義為只讀

return

從函數或腳本返回

select

保留字,生成菜單

set

設置Shell選項

shift

變換命令行參數

suspend

終止Shell的執行

test

評估條件表達式

then

保留字,if結構的一部分

time

保留字,輸出統計出來的命令執行時間,其輸出格式由TIMEFORMAT變數來控制

times

針對Shell及其子Shell,顯示用戶和系統CPU的時間和

trap

設置撲捉程序

type

確定命令的源

typeset

聲明變數,定義變數屬性,與declare等價

ulimit

設置和顯示進程佔用的資源限制

umask

設置和顯示文件許可權碼

unalias

取消別名定義

unset

取消變數或函數定義

until

保留字,一種循環結構

wait

等待後台作業完成

while

保留字,一種循環結構

I. app測試經常使用的adb shell指令有哪些

1. 顯示系統中全部android平台:

android list targets

2. 顯示系統中全部AVD(模擬器):

android list avd

3. 創建AVD(模擬器):

android create avd --name 名稱 --target 平台編號

4. 啟動模擬器:

emulator -avd 名稱 -sdcard ~/名稱.img (-skin 1280x800)

5. 刪除AVD(模擬器):

android delete avd --name 名稱

6. 創建SDCard:

mksdcard 1024M ~/名稱.img

7. AVD(模擬器)所在位置:

Linux(~/.android/avd) Windows(C:\Documents and Settings\Administrator\.android\avd)

8. 啟動DDMS:

ddms

9. 顯示當前運行的全部模擬器:

adb devices

10. 對某一模擬器執行命令:

abd -s 模擬器編號命令

11. 安裝應用程序:

adb install -r 應用程序.apk

12. 獲取模擬器中的文件:

adb pull <remote> <local>

13. 向模擬器中寫文件:

adb push <local> <remote>

14. 進入模擬器的shell模式:

adb shell

15. 啟動SDK,文檔,實例下載管理器:

android

16. 缷載apk包:

adb shell

cd data/app

rm apk包

exit

adb uninstall apk包的主包名

adb install -r apk包

17. 查看adb命令幫助信息:

adb help

18. 在命令行中查看LOG信息:

adb logcat -s 標簽名

19. adb shell後面跟的命令主要來自:

源碼\system\core\toolbox目錄和源碼\frameworks\base\cmds目錄。

20. 刪除系統應用:

adb remount (重新掛載系統分區,使系統分區重新可寫)。

adb shell

cd system/app

rm *.apk

21. 獲取管理員許可權:

adb root

22. 啟動Activity:

adb shell am start -n 包名/包名+類名(-n 類名,-a action,-d date,-m MIME-TYPE,-c category,-e 擴展數據,等)。

23、發布埠:

你可以設置任意的埠號,做為主機向模擬器或設備的請求埠。如:
adb forward tcp:5555 tcp:8000

24、復制文件:

你可向一個設備或從一個設備中復制文件,
復制一個文件或目錄到設備或模擬器上:
adb push <source> <destination></destination></source>
如:adb push test.txt /tmp/test.txt
從設備或模擬器上復制一個文件或目錄:
adb pull <source> <destination></destination></source>
如:adb pull /addroid/lib/libwebcore.so .

25、搜索模擬器/設備的實例:

取得當前運行的模擬器/設備的實例的列表及每個實例的狀態:
adb devices

26、查看bug報告:
adb bugreport
27、記錄無線通訊日誌:

一般來說,無線通訊的日誌非常多,在運行時沒必要去記錄,但我們還是可以通過命令,設置記錄:
adb shell
logcat -b radio

28、獲取設備的ID和序列號:

adb get-proct
adb get-serialno

29、訪問資料庫SQLite3

adb shell
sqlite3

#cd system/sd/data //進入系統內指定文件夾
#ls //列表顯示當前文件夾內容
#rm -r xxx //刪除名字為xxx的文件夾及其裡面的所有文件
#rm xxx //刪除文件xxx
#rmdir xxx //刪除xxx的文件夾

J. shell 總共有幾個命令

$SHELL是一個環境變數,它記錄用戶所使用的Shell類型。你可以用命令: # Shell-name 來轉換到別的Shell,這里Shell-name是你想要嘗試使用的Shell的名稱,如ash等。這個命令為用戶又啟動了一個Shell,這個Shell在最初登錄的那個Shell之後,稱為下級的Shell或子Shell。 使用命令: # exit 可以退出這個子Shell。使用不同的Shell的原因在於它們各自都有自己的特點,下面做一個簡單的介紹: 1.ash ash Shell是由Kenneth Almquist編寫的,是Linux中佔用系統資源最少的一個小Shell,它只包含24個內部命令,因而使用起來很不方便。 2.bash bash是Linux系統默認使用的Shell,它由Brian Fox和Chet Ramey共同完成,是Bourne Again Shell的縮寫,內部命令一共有40個。Linux使用它作為默認的Shell是因為它有以下的特色: (1)可以使用類似DOS下面的doskey的功能,用上下方向鍵查閱和快速輸入並修改命令。 (2)自動通過查找匹配的方式,給出以某字串開頭的命令。 (3)包含了自身的幫助功能,你只要在提示符下面鍵入help就可以得到相關的幫助。 3.ksh ksh是Korn Shell的縮寫,由Eric Gisin編寫,共有42條內部命令。該Shell最大的優點是幾乎和商業發行版的ksh完全相容,這樣就可以在不用花錢購買商業版本的情況下嘗試商業版本的性能了。 4.csh csh是Linux比較大的內核,它由以William Joy為代表的共計47位作者編成,共有52個內部命令。該Shell其實是指向/bin/tcsh這樣的一個Shell,也就是說,csh其實就是tcsh。 5.zch zch是Linux最大的Shell之一,由Paul Falstad完成,共有84個內部命令。如果只是一般的用途,是沒有必要安裝這樣的Shell的。Bourne Shell (/usr/old/bin/sh)
C Shell (/usr/bin/csh)
Korn Shell (/usr/bin/ksh)
POSIX Shell (/usr/bin/sh)
①輸入一個系統不認識的命令(如#fuck_pig)獲得系統提示
②#e cho $0 (適用:sh/ksh)
③#ps |grep $$|awk 『{print $4}』
④#e cho $SHELL(用戶默認的Shell,但不實時反映當前shell)還有在你的/etc/shells中你可以看到更多的shell:
# /etc/shells: valid login shells/bin/ash/bin/csh/bin/sh/usr/bin/es
/usr/bin/ksh/bin/ksh/usr/bin/rc
/usr/bin/tcsh/bin/tcsh/usr/bin/zsh/bin/sash/bin/zsh/usr/bin/esh/bin/dash/bin/bash/bin/rbash不同的 shell 有著不同的功能,且也彼此各異、或說"大同小異"。
常見的 shell 主要分為兩大主流:sh:burne shell (sh)

閱讀全文

與shell系統命令大全相關的資料

熱點內容
域外伺服器是什麼意思 瀏覽:637
大眾點評伺服器怎麼老卡頓 瀏覽:556
javavector與list的區別 瀏覽:313
java初始化類數組 瀏覽:302
java字元串轉換成json對象 瀏覽:647
android非阻塞socket 瀏覽:358
編譯系統概念 瀏覽:450
天眼通app能做什麼 瀏覽:555
魅族手機怎麼加密圖庫 瀏覽:8
rpa編譯器 瀏覽:570
車載雲伺服器記錄 瀏覽:738
四川金星壓縮機製造有限公司 瀏覽:53
移動平台圖片壓縮演算法 瀏覽:35
銀行項目java 瀏覽:569
怎樣將pdf轉換為ppt 瀏覽:595
純凈伺服器怎麼開服 瀏覽:286
比澤爾壓縮機如何換油 瀏覽:818
編譯鏈接如何生成exe 瀏覽:74
jre編譯運行環境 瀏覽:271
怎麼解壓鏡像系統 瀏覽:190