arch 顯示機器處理器架構
cat 把檔案串連接配接後傳到基本輸出(螢幕或加 > fileName 到另一個檔案)
cat filename 顯示整個檔案
cat > filename 從鍵盤建立一個檔案,它隻能建立并能編輯
cat file1 file2 file3 < file 合并檔案
cd
cd ~ 打開使用者目錄也就是/home/usrname,如果目前使用者名是yyy,無論在哪個目錄下輸入:cd ~,結果目前目錄會變成"yyy@yyy-virtual-PC:~$",其實就是/home/yyy
cd - 回上一次所在的目錄
cd ~ 或 cd 回指定使用者的宿主目錄
chgrp 修改檔案所屬的組
chmod "文法格式: chmod [-vR] mode 檔案名
參數說明:
mode 權限設定字串,格式為[ugoa] [+-=] [rwx]
u 表示檔案的擁有者
g 表示與此檔案擁有者屬于一個組群的人
o 表示其他人
a 表示包含以上三者即檔案擁有者(u)、群組(g)、其他(o)
+ 表示增權重限
- 表示取消權限
= 表示唯一設定權限
r 表示有讀取的權限
w 表示有寫入的權限
x 表示有執行的權限
-v 顯示權限改變的詳細資料
-R 表示對目前目錄下的所有檔案和子目錄進行相同的權限更改" 更改檔案的權限使其在安裝時有執行的權限,Linux/Ubuntu 系統中檔案調用的權限分為三級:檔案擁有者(u)、群組(g)、其他(o)。用chmod就可以更改檔案的權限。chmod是一個相當靈活的指令,對同一個檔案的權限的修改可以用多種風格的指令格式來實作。 http://blog.sina.com.cn/s/blog_4d414a0f0100ej7s.html
chmod a+rwx ownlinux 将目前目錄下ownlinux這個檔案的權限修為所有使用者擁有該檔案的讀取、寫入、執行的權限.普通使用者下該指令要添加sudo
chmod ugo+rwx ownlinux 同上.雖然指令不同,但結果相同
chmod +x 增加可執行權限
chown
chown root filename 把filename的屬主改成root使用者
chgrp
chgrp root filename 把filename的屬組主改成root組
curl http://www.linuxidc.com www.linuxidc.com 頁面内容顯示在螢幕上了
curl -o page.html http://www.linuxidc.com 儲存頁面到page.html(螢幕上出現一個下載下傳頁面進度訓示),也可以下載下傳檔案
注意: 如果linux上沒有配置DNS IP這個指令不會執行成功,在這種情況下需要為linux配置一個域名解析伺服器IP.打開/etc/resolv.conf檔案,輸入:
nameserver 208.67.222.222
nameserver 208.67.220.220
儲存即可(這兩個IP你的linux可能ping不通,可以在網上找能夠ping通的DNS IP).
dpkg dpkg是Debian系統的背景包管理器,類似RPM。也是Debian包管理系統的中流砥柱,負責安全解除安裝軟體包,配置,以及維護已安裝的軟體包。由于ubuntu和Debian乃一脈相承,是以很多指令是不分彼此的。 http://linux.chinaunix.net/techdoc/system/2007/12/05/973754.shtml
dpkg -l |grep -i "軟體包名" 檢視系統中與"軟體包名"相關聯的包.
dpkg -l 資料庫查詢,目前版本的 dpkg 使用文本檔案來作為資料庫.通稱在 /var/lib/dpkg 目錄下. 通稱在 status 檔案中存儲軟體狀态,和控制資訊. 在 info/ 目錄下備份控制檔案, 并在其下的 .list 檔案中記錄安裝檔案清單, 其下的 .mdasums 儲存檔案的 MD5 編碼.列出目前系統中所有的包.可以和參數less一起使用在分屏檢視. (類似于rpm -qa)
dpkg -l nano 查詢nano
dpkg -l nano* 模糊查詢nano
dpkg –listfiles nano 查詢系統中屬于nano的檔案
dpkg -s nano 檢視某個檔案的歸屬包
dpkg -list 列出系統中安裝的軟體包
dpkg -L 查詢系統中已安裝的軟體包所安裝的位置. (類似于rpm -ql)
dpkg --contents file.deb 列出本地封包件所含檔案
dpkg --install file.deb 安裝本地包
dpkg --info <package> 列出軟體包解包後的包名稱.
dpkg --listfiles pkgname 列出一個包所安裝的檔案
dpkg --status pkgname 列出軟體包資訊
dpkg --search file 查詢檔案歸屬
dpkg --s 查詢已安裝的包的詳細資訊.
dpkg -S 查詢系統中某個檔案屬于哪個軟體包. (類似于rpm -qf)
dpkg -I 查詢deb包的詳細資訊,在一個軟體包下載下傳到本地之後看看用不用安裝(看一下呗).
dpkg -i 手動安裝軟體包(這個指令并不能解決軟體包之前的依賴***問題),如果在安裝某一個軟體包的時候遇到了軟體依賴的問題,可以用apt-get -f install在解決信賴***這個問題.
dpkg -r 解除安裝軟體包.不是完全的解除安裝,它的配置檔案還存在.
dpkg -P 全部解除安裝(但是還是不能解決軟體包的依賴***的問題)
dpkg-reconfigure 參考
echo 回顯
echo -n 不換行
env <command> 檢視程式在不同環境下是如何工作的.
export 設定或顯示環境變量 "使用者登入到系統後,系統将啟動一個使用者shell。在這個shell中,可以使用shell指令或聲明變量,也可以建立并運作shell腳本程式.運作shell腳本程式時,系統将建立一個子shell。此時,系統中将有兩個shell,一個是登入時系統啟動的shell,另一個是系統為運作腳本程式建立的shell.當一個腳本程式運作完畢,它的腳本shell将終止,可以傳回到執行該腳本之前的shell。從這種意義上來說,使用者可以有許多shell,每個shell都是由某個shell(稱為父shell)派生的.
在子shell中定義的變量隻在該子shell内有效。如果在一個shell腳本程式中定義了一個變量,當該腳本程式運作時,這個定義的變量隻是該腳本程式内的一個局部變量,其他的shell不能引用它,要使某個變量的值可以在其他shell中被改變,可以使用export指令對已定義的變量進行輸出(有點類似c++中的extern)。
export指令将使系統在建立每一個新的shell時定義這個變量的一個拷貝,這個過程稱之為變量輸出。
一個變量建立時,它不會自動地為在它之後建立的shell程序所知,而指令export可以向後面的shell傳遞變量的值。當一個shell腳本調用并執行時,它不會自動得到原為腳本(調用者)裡定義的變量的通路權,除非這些變量已經被顯式地設定為可用。export指令可以用于傳遞一個或多個變量的值到任何後繼腳本。
#echo $PKG_PATH 在任何時候建立的變量都隻是目前shell的局部變量,是以不能被shell運作的其他指令或shell程式所利用。 export是把你設定的環境變量傳給目前SHELL的子SHELL,使其在子SHELL中有效。"
補充說明 在shell中執行程式時,shell會提供一組環境變量。export可新增,修改或删除環境變量,供後續執行的程式使用。export的效力僅及于該此登入操作
export -f 代表[變量名稱]中為函數名稱
export -n 删除指定的變量。變量實際上并未删除,隻是不會輸出到後續指令的執行環境中。
export -p 列出所有的shell賦予程式的環境變量。
find 查找指令
find . -depth -name "file*" 從目前目錄中開始,包括子目錄中查找以file開頭的檔案或目錄,注意: -depth一定要放在 "."的後面,否則不工作
find . -depth -name "file*" -type f 隻查找普通檔案
history 顯示曆史指令
history -c 清除曆史指令
!n n表示數字,表示使用曆史指令n
init init是所有程序的祖先﹐它的程序号始終為1﹐是以發送TERM信号給init會終止所有的使用者程序﹑守護程序等。shutdown 就是使用這種機制。init定義了8個運作級别(runlevel),init 0為關機﹐init 1為重新開機。關于init可以長篇大論﹐這裡就不再叙述。另外還有telinit指令可以改變init的運作級别﹐比如﹐telinit -iS可使系統進入單使用者模式﹐并且得不到使用shutdown時的資訊和等待時間。
ifconfig指令參數常用指令
用ifconfig 來激活和終止網絡接口的連接配接
ifconfig eth0 down
ifconfig eth0 up
ifup eth0
ifdown eth0
置網卡eth1的IP位址、網絡掩碼、廣播位址,實體位址并且激活它
ifconfig eth1 192.168.1.252 hw ether 00:11:00:00:11:11 netmask 255.255.255.0 broadcast 192.168.1.255 up
或
[[email protected] ~]# ifconfig eth1 hw ether 00:11:00:00:11:22
[[email protected] ~]# ifconfig eth1 192.168.1.252 netmask 255.255.255.0 broadcast 192.168.1.255 up
其中 hw 後面所接的是網絡接口類型, ether表示以太網, 同時也支援 ax25 、ARCnet、netrom等,詳情請檢視 man ifconfig
指令行編寫配置檔案來實作,一般你的網卡是eth0.
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 #描述網卡對應的裝置别名,例如ifcfg-eth0的檔案中它為eth0
BOOTPROTO=static #設定網卡獲得ip位址的方式,可能的選項為static,dhcp或bootp,分别對應靜态指定的 ip位址,通過dhcp協定獲得的ip位址,通過bootp協定獲得的ip位址
BROADCAST=192.168.0.255 #對應的子網廣播位址
HWADDR=00:07:E9:05:E8:B4 #對應的網卡實體位址
IPADDR=192.168.0.2 #如果設定網卡獲得 ip位址的方式為靜态指定,此字段就指定了網卡對應的ip位址
IPV6INIT=no
IPV6_AUTOCONF=no
NETMASK=255.255.255.0 #網卡對應的網絡掩碼
NETWORK=192.168.0.0 #網卡對應的網絡位址
ONBOOT=yes #系統啟動時是否設定此網絡接口,設定為yes時,系統啟動時激活此裝置
修改對應網卡的網關的配置檔案
vi /etc/sysconfig/network
NETWORKING=yes(表示系統是否使用網絡,一般設定為yes。如果設為no,則不能使用網絡,而且很多系統服務程式将無法啟動)
HOSTNAME=localhost(設定本機的主機名,這裡設定的主機名要和/etc/hosts中設定的主機名對應)
GATEWAY=192.168.1.1(設定本機連接配接的網關的IP位址。)
route 添加/删除路由,檢視路由表 linux 路由表維護
添加到主機的路由
# route add -host 192.168.1.2 dev eth0:0
# route add -host 10.20.30.148 gw 10.20.30.40
添加到網絡的路由
# route add -net 10.20.30.40 netmask 255.255.255.248 eth0
# route add -net 10.20.30.48 netmask 255.255.255.248 gw 10.20.30.41
# route add -net 192.168.1.0/24 eth1
添加預設路由
# route add default gw 192.168.1.1
删除路由
# route del -host 192.168.1.2 dev eth0:0
# route del -host 10.20.30.148 gw 10.20.30.40
# route del -net 10.20.30.40 netmask 255.255.255.248 eth0
# route del -net 10.20.30.48 netmask 255.255.255.248 gw 10.20.30.41
# route del -net 192.168.1.0/24 eth1
# route del default gw 192.168.1.1
last 指令:
功能說明:列出目前與過去登入系統的使用者相關資訊。
單獨執行last指令,它會讀取位于/var/log目錄下,名稱為wtmp的檔案,并把該給檔案的内容記錄的登入系統的使用者名單全部顯示出來。
-a 把從何處登入系統的主機名稱或IP位址,顯示在最後一行。
-d 将IP位址轉換成主機名稱。
-f <記錄檔案> 指定記錄檔案。
-n <顯示列數>或-<顯示列數> 設定列出名單的顯示列數。
-R 不顯示登入系統的主機名稱或IP位址。
-x 顯示系統關機,重新開機,以及執行等級的改變等資訊。
示例:
last 預設顯示
root pts/0 115.49.166.164 Mon Aug 12 17:58 still logged in
reboot system boot 2.6.32-131.0.15. Mon Aug 12 14:38 - 18:15 (03:37)
root pts/0 14.204.0.248 Tue Jul 23 16:08 - down (00:39)
第一列是使用者名。
第二列是終端。
第三列是機器名或IP
第四列是登入時間資訊。
第五列是狀态,still longged in表示登入狀态,(03:02)表示持續時間(3分2秒)。
reboot行表示系統重新開機,正常指令重新開機顯示為down,而電源強制重新開機為crash。
其它示例:
last reboot 顯示使用者名為reboot的指令行
last | grep down 顯示包含 down 的指令行
netstat
-ntlp 檢視系統網絡端口使用情況
-atn 檢視網絡連接配接情況
kill ???
locales 語言設定選項
Locale 檢視目前的locale環境,也就是目前的語言環境。
Locale –a 檢視系統内安裝的locale
Locale –m 列出linux所支援的所有的locale語言環境。
less 檢視檔案内容,less 工具也是對檔案或其它輸出進行分頁顯示的工具.
less的文法格式: less [參數] 檔案
常用參數
-c 從頂部(從上到下)重新整理螢幕,并顯示檔案内容。而不是通過底部滾動完成重新整理;
-f 強制打開檔案,二進制檔案顯示時,不提示警告;
-i 搜尋時忽略大小寫;除非搜尋串中包含大寫字母;
-I 搜尋時忽略大小寫,除非搜尋串中包含小寫字母;
-m 顯示讀取檔案的百分比;
-M 顯法讀取檔案的百分比、行号及總行數;
-N 在每行前輸出行号;
-p pattern 搜尋pattern;比如在/etc/profile搜尋單詞MAIL,就用 less -p MAIL /etc/profile
-s 把連續多個空白行作為一個空白行顯示;
-Q 在終端下不響鈴;
動作
Enter鍵 向下移動一行;
y 向上移動一行;
空格鍵 向下滾動一屏;
b 向上滾動一屏;
d 向下滾動半屏;
h less的幫助;
u 向上洋動半屏;
w 可以指定顯示哪行開始顯示,是從指定數字的下一行顯示;比如指定的是6,那就從第7行顯示;
g 跳到第一行;
G 跳到最後一行;
p n% 跳到n%,比如 10%,也就是說比整個檔案内容的10%處開始顯示;
/pattern 搜尋pattern ,比如 /MAIL表示在檔案中搜尋MAIL單詞;
v 調用vi編輯器;
q 退出less
!command 調用SHELL,可以運作指令;比如!ls 顯示目前列目前目錄下的所有檔案.
ls 格式:ls [參數] [檔案/目錄] "參數說明:
-a 表示列出所有的檔案,包括以"".""開頭的隐藏檔案
-d 如果其後接的是一個目錄,則此隻輸出目錄的名稱
-l 表示以清單的形式列出檔案的條目,包括檔案的名稱、權限、擁有者、大小、最後修改時間等
-t 表示列出的條目按最後修改的時間進行排序,預設是使用檔案夾的名稱來排序
-C 以檔案的名稱按列縱向排序
-F 在檔案名後加一個符号來表示檔案類型"
ls 表示列出所有的檔案,包括以"."開頭的隐藏檔案
ls -a 用ls -a來檢視就用看到以"."開頭的隐藏檔案
ls -C 以檔案的名稱按列縱向排序
ls -d 如果其後接的是一個目錄,則此隻輸出目錄的名稱
ls -l 顯示檔案屬***
ls -lh 顯示為你家詳細資訊
ls -F 目前目錄下的子目錄後面多了一個"/"
ls -F --file-type locale* 列出以locale開頭的所有檔案或目錄
ls -t 表示列出的條目按最後修改的時間進行排序,預設是使用檔案夾的名稱來排序
ls -l | grep '^-'或^[^d] 僅列出檔案
ls -l | grep '^d'或^[^-] 僅列出目錄
ls -1 -F | grep - v[/$] linux下正确的隻列出目前目錄下檔案名的方法如下 http://apps.hi.baidu.com/share/detail/33050937
ls -al | more 通過管道實作檔案清單分屏顯示
ls -R 遞歸枚舉子目錄
gnome-open 以管理者權限打開檔案夾
gnome-open path 以管理者權限打開檔案夾,在該檔案夾中打開的檔案可以直接編輯儲存。
grep grep [OPTION]…PATTERN [FILE] 是一種強大的文本搜尋工具,它能使用正規表達式搜尋文本,并把比對的行列印出來
grep 'main' cal.c 搜尋本目錄檔案cal.c中的main(區分大小寫)字元串,并将相應的行輸出
grep -i 'main' ./* 搜尋本目錄所有檔案的main(不區分大小寫)字元串,并将相應的檔案及行輸出
grep -c 隻輸出比對行的計數。
grep -I 不區分大小寫(隻适用于單字元)。
grep -h 查詢多檔案時不顯示檔案名。
grep -l 查詢多檔案時隻輸出包含比對字元的檔案名。
grep -n 顯示比對行及行号。
grep -s 不顯示不存在或無比對文本的錯誤資訊。
grep -v 顯示不包含比對文本的所有行
grep -r 搜尋子目錄
grep -d skip 忽略子目錄
grep -C 5 foo file 顯示file檔案中比對foo字串那行以及上下5行
grep -B 5 foo file 顯示foo及前5行
grep -A 5 foo file 顯示foo及後5行
halt 最簡單的關機指令 其實halt就是調用shutdown -h。halt執行時﹐殺死應用程序﹐執行sync系統調用﹐檔案系統寫操作完成後就會停止核心。
[-n] 防止sync系統調用﹐它用在用fsck修補根分區之後﹐以阻止核心用老版本的超級塊〔superblock〕覆寫修補過的超級塊。
[-w] 并不是真正的重新開機或關機﹐隻是寫wtmp〔/var/log/wtmp〕紀錄。
[-d] 不寫wtmp紀錄〔已包含在選項[-n]中〕。
[-f] 沒有調用shutdown而強制關機或重新開機。
[-i] 關機〔或重新開機〕前﹐關掉所有的網絡接口。
[-p] 該選項為預設選項。就是關機時調用poweroff。
locales 檢視現在的locale配置環境
locale-gen 生成需要的locale檔案
參數 --purge 用來删除所有舊的配置,在出現問題時很有用
logout 登出 登出是登陸的相對操作,登陸系統後,若要離開系統,使用者隻要直接下達logout指令即可
man ??
mkdir 建立檔案夾
more
more file.txt 将檔案中内容輸出到終端
mount 加載指定的檔案系統.用法詳解
mount -t type device dir,如: mount -t auto /dev/cdrom /mnt/cdrom
-t 指定檔案系統類型
type 檔案系統類型,如: auto,自動檢測檔案類型;iso9660 CD-ROMCD光牒的标準檔案系統,等.
umount 解除安裝檔案系統
umount <file>,例如:umount /mnt/cdrom
passwd "Password: <--- 輸入你目前使用者的密碼
Enter new UNIX password: <--- 新的Root使用者密碼
Retype new UNIX password: <--- 重複新的Root使用者密碼"
ps ps [option] ps指令最常用的還是用于監控背景程序的工作情況,因為背景程序是不和螢幕鍵盤這些标準輸入/輸出裝置進行通信的,是以如果需要檢測其情況,便可以使用 ps指令了.
ps -a 可以例出系統目前運作的所有程序,包括由其他使用者啟動的程序
ps auxww 列出除一些很特殊程序以外的所有程序,并會以一個高可讀的形式顯示結果,每一個程序都會有較為詳細的解釋;
ps -e app 顯示所有程序
ps -e |grep app
ps -f 全格式. 也就是顯示更多的資訊
ps -h 不顯示标題.
ps -l 長格式.
ps -o ??
ps -r 隻顯示正在運作的程序.
ps -u 檢視程序的所有者及其它資訊
ps -w 檢視目前登入使用者運作的程式
ps -x 顯示沒有控制終端的程序
ps -afl 檢視目前有哪些程序
ps -u $USER -o pid,rss,cmd --sort -rss 檢視目前使用者程式實際記憶體占用,并排序
ps -eo fname,rss|awk '{arr[$1]+=$2} END {for (i in arr) {print i,arr}}'|sort -k2 -nr 統計程式的記憶體耗用
ps -eo "%C : %p : %z : %a"|sort -k5 -nr 按記憶體從大到小排列程序
ps -eo "%C : %p : %z : %a"|sort -nr 按cpu使用率從大到小排列程序
pstree 檢視目前程序樹
pwd 檢視目前所在目錄的絕對路經
rm rm指令的一般形式為: rm [選項] 檔案… 使用者可以用rm指令删除不需要的檔案。該指令的功能為删除一個目錄中的一個或多個檔案或目錄,它也可以将某個目錄及其下的所有檔案及子目錄均删除。對于連結檔案,隻是斷開了連結,原檔案保持不變。如果沒有使用- r選項,則rm不會删除目錄。
rm -f 忽略不存在的檔案,從不給出提示。
rm -r 訓示rm将參數中列出的全部目錄和子目錄均遞歸地删除。
rm -i 進行互動式删除
rpm 的簡單用法
rpm的一般格式: rpm [選項] [rpm軟體包]
1、初始化rpm 資料庫(可以省略)
rpm --rebuilddb % 注:這個要花好長時間
%注:有時rpm 系統出了問題,不能安裝和查詢,大多是這裡出了問題。
2、RPM軟體包管理的查詢功能:
rpm -q [select-options] [query-options]
1)查詢系統已安裝的軟體
rpm -q packagename
-q就是 --query,此選項表示詢問系統是不是安裝了gaim軟體包;
如果已安裝會有資訊輸出;如果沒有安裝,會輸出gaim 沒有安裝的資訊;
rpm -qa 檢視系統中所有已經安裝的包,要加 -a 參數
如果分頁檢視,再加一個管道 |和more指令,如 rpm -qa |more
rpm -qa |grep packagename 如果要查找某個軟體包,可以用 grep 抽取出來
2)查詢一個已經安裝的檔案屬于哪個軟體包;
文法: rpm -qf 檔案名
注:檔案名所在的絕對路徑要指出
例:rpm -qf /usr/lib/libacl.la
3)查詢已安裝軟體包都安裝到何處;
文法:rpm -ql 軟體包名
例:rpm -ql mplayer
4)查詢一個已安裝軟體包的資訊
文法: rpm -qi 軟體包名
例:rpm -qi mplayer
5)檢視一下已安裝軟體的配置檔案;
文法格式:rpm -qc 軟體名
例:rpm -qc mplayer
6)檢視一個已經安裝軟體的文檔安裝位置:
文法格式: rpm -qd 軟體名
例:rpm -qd mplayer
7)檢視一下已安裝軟體所依賴的軟體包及檔案;
文法格式: rpm -qR 軟體名
例:rpm -qR mplayer
注:可以把幾個參數組合起來用,如 rpm -qil packagename
對于未安裝的軟體包的檢視,檢視的前提是目前目錄下已存在一個.rpm檔案.
1)檢視一個軟體包的用途、版本等資訊;
文法: rpm -qpi file.rpm
例:rpm -qpi mplayer-1.0pre7try2-2.i386.rpm
2)檢視一件軟體包所包含的檔案;
文法: rpm -qpl file.rpm
例:rpm -qpl mplayer-1.0pre7try2-2.i386.rpm
3)檢視軟體包的文檔所在的位置;
文法: rpm -qpd file.rpm
例:rpm -qpd mplayer-1.0pre7try2-2.i386.rpm
4)檢視一個軟體包的配置檔案;
文法: rpm -qpc file.rpm
例:rpm -qpc mplayer-1.0pre7try2-2.i386.rpm
5)檢視一個軟體包的依賴關系
文法: rpm -qpR file.rpm
例:rpm -qpR mplayer-1.0pre7try2-2.i386.rpm
3、軟體包的安裝、更新、删除等;
安裝和更新一個rpm 包 文法:
rpm -ivh file.rpm 這個是用來安裝一個新的rpm 包
rpm -Uvh file.rpm 這是用來更新一個rpm 包,如果有依賴關系的,需解決依賴關系;如果找不到依賴關系的包,可以用下面的指令強制安裝:
rpm -ivh --nodeps --force file.rpm
rpm -Uvh --nodeps --force file.rpm
例:
rpm -ivh --test mplayer-1.0pre7try2-2.i386.rpm
--test表示測試,并不真正安裝。
rpm -ivh --relocate /=/usr/local/mplayer mplayer-1.0pre7try2-2.i386.rpm
為軟體包指定安裝目錄:要加 --relocate 參數
安裝在指定目錄中的程式如何調用呢?
通常可執行程式都放在安裝目錄下的bin或者sbin目錄中。
删除一個rpm 包首先查出需要删除的rpm包,然後用下面的指令來解除安裝:
rpm -e 軟體包名
例:rpm -e mplayer 解除安裝mplayer
如果有其它的rpm依賴于該rpm包,系統會出現警告。
如果一定要解除安裝,可以用選項 --nodeps 忽略依賴關系。但最好不要這麼做。
四 RPM管理包管理器支援網絡安裝和查詢
rpm [選項] rpm包的http或者ftp的位址
比如我們想通過 Fedora Core 4.0 的一個鏡像查詢、安裝軟體包。
查詢: rpm -qpi http://mirrors.kernel.org/.../RPMS/rsh-0.17-29.rpm
安裝: rpm -ivh http://mirrors.kernel.org/.../RPMS/rsh-0.17-29.rpm
rz 上載檔案
sz 下載下傳檔案
set 設定shell的執行方式(定制shell環境),同時也可以使用set設定環境變量
設定參數變量 設定$1,$2…的值
sudo
如果你想得到對所有檔案進行讀寫和修改權限,那麼就在“終端”裡輸入 sudo nautilus ,這條指令是指用root權限打開檔案浏覽器,對所有檔案擁有最高的讀寫權限。
如果是單次執行某個需要root權限的操作的話,輸入指令時就在指令前加sudo,比如你要重新開機電腦,指令是reboot,那麼你就得在“終端”裡輸入“sudo reboot”
shutdown 關機指令
shutdown --help
shutdown -h now 現在立即關機
shutdown -h +3 提示使用者将在三分鐘後關機
shutdown -r now 現在立即重新開機
shutdown -r +3 三分鐘後重新開機
shutdown -r 20:23 在20:23時将重新開機計算機
shutdown -r 20:23 & 可以将在20:23時重新開機的任務放到背景去,使用者可以繼續操作終端
sort sort [option...] file 文本行排序
sort file.txt
stty 設定終端指令行或顯示終端資訊
stty -a 顯示終端設定
tar -xzf all.tar.gz
tar -xjf all.tar.bz2
bunzip2 all.tar.bz2 生成 all.tar 再 tar -xf all.tar
或 tar jxvf all.tar.bz2
例一:将整個/etc目錄打包成為 /tmp/etc.tar
tar -cvf /tmp/etc.tar /etc <==僅打包,不壓縮!
tar -zcvf /tmp/etc.tar.gz /etc <==打包後,以 gzip 壓縮
tar -jcvf /tmp/etc.tar.bz2 /etc <==打包後,以 bzip2 壓縮
tcpdump -i eth1 proto[xx:yy]...
proto表示協定,可以是ether,tcp,udp等等,proto[xx:yy]從proto協定的xx位元組過濾yy個位元組(省略号表示資料滿足何種條件).例如:
ether[12:2]指出從ethernet協定的第12位元組開始過濾2個位元組(資料滿足何種條件),其實就是以太網協定的類型字段,以太網協定如下定義:
typedef struct _EHHR_
{
UCHAR cDest[6]; // Destination ethernet addrress.
UCHAR cSrc[6]; // Source ethernet addresss.
USHORT cType; // Ethernet pachet type.
}EH_HEADR, *PEH_HEADR;
其中,cType指出後面使用的是何種協定,例如:
0x0800 // 網際協定(IP).
0x0806// 位址解析協定(ARP : Address Resolution Protocol).
0x814C// 簡單網絡管理協定(SNMP:Simple Network Management Protocol)
0x880B// 點對點協定(PPP:Point-to-Point Protocol)
0x8863// 以太網上的 PPP(發現階段)(PPPoE:PPP Over Ethernet <Discovery Stage>).
0x8864// 以太網上的 PPP(PPP 會話階段)(PPPoE,PPP Over Ethernet<PPP Session Stage>).
0x88CC// 連結層發現協定(LLDP:Link Layer Discovery Protocol)
是以ether[12:2]其實就是cType.
同理,ip[0] & 0x0f>5 指出從ip協定第0個位元組後4位的值是否大于5,實際是過濾IP協定的長度(如果不帶選項就是标準長度20位元組,将IP協定以位元組為機關劃分為每行4位元組的矩陣,最少5列,也就是5*4=20位元組,如果帶選項則比該值大).
touch 用來更新檔案或目錄的時間,檔案不存在則建立該檔案
touch file 建立檔案file
linux沒有專門的檔案建立指令,vi <file>, cat >file, echo "1234" >file,還有gpedit, cp,mv等都可以建立檔案,隻是這都是間接建立的.
im-switch ???
uname 顯示系統資訊
uname -m 顯示機器CPU架構
uname -r 顯示正在使用的核心版本
unset 用來删除指定的變量或者函數
unset -f 删除函數
unset -v 删除變量
格式:whereis <command> 查找指定指令<command>的位置,包括執行檔案、源代碼和手冊頁檔案。
格式:whereis -b <command> 隻查找指定指令<command>的執行檔案位置。
格式:whereis -m <command> 隻查找指定指令<command>的手冊頁檔案所在位置。
格式:whereis -s <command> 隻查找指定指令<command>的源代碼所在位置。
<a href="http://www.hackbase.com/tech/2010-10-18/61687.html" target="_blank">linux硬體查詢</a>
同shell相關的其它指令
中斷指令 執行完指令後(若沒有轉到背景),可以使用CTRL+C來中止指令
通過終端啟動程式 通過終端啟動的程式是終端的子程序,如果關閉終端,該程序也會被關閉.運作程式時指令行後面加&表示背景運作,同終端不再有父子關系.
終端輸入:gpedit test.txt 啟動gpedit,且gpedit同終端有父子關系
終端輸入:gpedit test.txt & 啟動gpedit,且gpedit同終端沒有父子關系
svn svn用戶端指令行的使用 參考:Ubuntu中SVN用戶端使用+Myeclipse 8.5 配置SVN插件 http://blog.csdn.net/scut1135/article/details/6830758
svn checkout <src> <dest> 将檔案 checkout 到本地目錄,如: svn checkout http://10.1.1.111:8080:/yyy/learn/ /home/desktop/learn/,按提示輸入相應的使用者名和密碼
svn update 預設将目前目錄以及子目錄下的所有檔案都更新到最新版本。
svn update -r 200 test.php 将版本庫中的檔案test.php還原到版本200
svn update test.php 更新,于版本庫同步。(如果在送出的時候提示過期的話,是因為沖突,需要先update,修改檔案,然後清除svn resolved,最後再送出commit)
svn commit 将改動的檔案送出到版本庫
svn commit path 将指定目錄中改動的檔案送出到版本庫
環境變量 env <command>檢視程式在不同環境下是如何工作的.
$HOME 目前使用者的目錄HOME路徑
$PATH 以冒号分隔的用來搜尋指令的目錄清單
$PS1 指令提示符,通常是$,在bash中,可以是更複雜的值.如[\u@\h\W]$就是一個流行的預設值,它給出使用者名,機器名和目前目錄名,當然也包括一個$提示符.
$PS2 二級提示符,用來提示後續輸入,通常是>字元
$IFS 輸入域分隔符,當shell讀取輸入時,它給出用來分隔單詞的一組字元,它們通常是空格,制表符和換行符.
$0 shell腳本名稱
$# 傳遞給腳本參數的個數
$$ 腳本程序号
未知指令
TIMEFORMAT="" time ./exefile time測算exefile運作時間;TIMEFORMAT重置預設的POSIX時間輸出格式.
本文轉自jetyi51CTO部落格,原文連結: http://blog.51cto.com/jetyi/925031,如需轉載請自行聯系原作者