在linux的命令提示符及CMD命令提示符中顯示時(shí)間用途之一是可以查看某個(gè)命令或程序的執(zhí)行時(shí)間。一、CMD中顯示時(shí)間設(shè)置參數(shù)說明:$P:當(dāng)前路徑$G:(大于號)$T:當(dāng)前時(shí)間,精確到0.01s實(shí)驗(yàn)如下:C:/Users/g4-1016txprompt
成都創(chuàng)新互聯(lián)主營陳倉網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,app軟件開發(fā),陳倉h5小程序定制開發(fā)搭建,陳倉網(wǎng)站營銷推廣歡迎陳倉等地區(qū)企業(yè)咨詢
$P$S$T$GC:/Users/g4-1016tx
13:19:53.92arp
-a接口:
192.168.0.189
---
0xb
Internet
地址
物理地址
類型
192.168.0.1
c8-3a-35-5a-f1-10
動(dòng)態(tài)C:/Users/g4-1016tx
13:19:56.46二、修改linux中shell命令提示符顯示1.修改單個(gè)用戶的提示在用戶環(huán)境變量中增加這一項(xiàng)即可,這種只修改當(dāng)前用戶的提示符。注意修改后需要重新加載用戶環(huán)境
變量source
.bash_profile
或者退出重新登陸。[oracle@dg2:~Sat
Aug
03-13:09:57$]
tail
-n
1
.bash_profileexport
PS1='
[/u@/h:/w/d-/t/$]
'2.修改全局用戶提示符如果需要修改整個(gè)系統(tǒng)所以用戶的提示,需要修改/etc/bashrc
在里面增加的同樣是下面這一句。[root@dg2
~]#
tail
-n
1
/etc/profileexport
PS1='
[/u@/h:/w/d-/t/$]
'[root@dg2
~]#
su
-
oracle[oracle@dg2:~Sat
Aug
03-13:16:59$]命令提示符中各個(gè)顯示參數(shù)的詳細(xì)解釋:即可,其中/u顯示當(dāng)前用戶賬號,/h顯示當(dāng)前主機(jī)名,/W顯示當(dāng)前路徑,/$顯示'$'符號/W
代替
/w
就可以實(shí)現(xiàn)絕對路徑到相對路徑的轉(zhuǎn)換/d
:代表日期,格式為weekday
month
date,例如:Mon
Aug
1/H
:完整的主機(jī)名稱。例如:我的機(jī)器名稱為:fc4.linux,則這個(gè)名稱就是fc4.linux/h
:僅取主機(jī)的第一個(gè)名字,如上例,則為fc4,.linux則被省略/t
:顯示時(shí)間為24小時(shí)格式,如:HH:MM:SS/T
:顯示時(shí)間為12小時(shí)格式/A
:顯示時(shí)間為24小時(shí)格式:HH:MM/u
:當(dāng)前用戶的賬號名稱/v
:BASH的版本信息/w
:完整的工作目錄名稱。家目錄會(huì)以
~代替/W
:利用basename取得工作目錄名稱,所以只會(huì)列出最后一個(gè)目錄/#
:下達(dá)的第幾個(gè)命令/$
:提示字符,如果是root時(shí),提示符為:#
,普通用戶則為:$三、直接在類UNIX中使用TIME命令統(tǒng)計(jì)命令運(yùn)行時(shí)間使用方法是在需要執(zhí)行的命令前加上time比如:[oracle@bys001
~]$
time
dateMon
Sep
16
17:00:31
CST
2013real
0m0.015suser
0m0.001ssys
0m0.013s[oracle@bys001
~]$
time
echo
hellohelloreal
0m0.000suser
0m0.000ssys
0m0.001s
1、crontab -e添加計(jì)劃任務(wù)
2、0 0 * * * wall "Too late, go to bed"
3、crontab -l檢查計(jì)劃任務(wù)
S中設(shè)置的啟動(dòng)設(shè)備(通常是硬盤)啟動(dòng),
接著啟動(dòng)設(shè)備上安裝的引導(dǎo)程序lilo或grub開始引導(dǎo)Linux,Linux首先進(jìn)行內(nèi)核的引導(dǎo),
接下來執(zhí)行init程序,init程序調(diào)用了rc.sysinit和rc等程序,rc.sysinit和rc當(dāng)完成系
統(tǒng)初始化和運(yùn)行服務(wù)的任務(wù)后,返回init;init啟動(dòng)了mingetty后,打開了終端供用戶登
錄系統(tǒng),用戶登錄成功后進(jìn)入了Shell,這樣就完成了從開機(jī)到登錄的整個(gè)啟動(dòng)過程。
加載內(nèi)核
LILO啟動(dòng)之后,如果你選擇了Linux作為準(zhǔn)備引導(dǎo)的操作系統(tǒng),第一個(gè)被加載的東西就是內(nèi)核。請記住此時(shí)的計(jì)算機(jī)內(nèi)存中還不存在任何操作系統(tǒng), PC(因?yàn)樗鼈兲烊坏脑O(shè)計(jì)缺陷)也還沒有辦法存取機(jī)器上全部的內(nèi)存。因此,內(nèi)核就必須完整地加載到可用RAM的第一個(gè)兆字節(jié)之內(nèi)。為了實(shí)現(xiàn)這個(gè)目的,內(nèi)核是被壓縮了的。這個(gè)文件的頭部包含著必要的代碼,先設(shè)置CPU進(jìn)入安全模式(以此解除內(nèi)存限制),再對內(nèi)核的剩余部分進(jìn)行解壓縮。
執(zhí)行內(nèi)核
內(nèi)核在內(nèi)存中解壓縮之后,就可以開始運(yùn)行了。此時(shí)的內(nèi)核只知道它本身內(nèi)建的各種功能,也就是說被編譯為模塊的內(nèi)核部分還不能使用。最基本的是,內(nèi)核必須有足夠的代碼設(shè)置自己的虛擬內(nèi)存子系統(tǒng)和根文件系統(tǒng)(通常就是ext2文件系統(tǒng))。一旦內(nèi)核啟動(dòng)運(yùn)行,對硬件的檢測就會(huì)決定需要對哪些設(shè)備驅(qū)動(dòng)程序進(jìn)行初始化。從這里開始,內(nèi)核就能夠掛裝根文件系統(tǒng)(這個(gè)過程類似于Windows識別并存取C盤的過程)。內(nèi)核掛裝了根文件系統(tǒng)之后,將啟動(dòng)并運(yùn)行一個(gè)叫做 init的程序。
注意:在這里我們故意略去了Linux內(nèi)核啟動(dòng)的許多細(xì)節(jié),這些細(xì)節(jié)只有內(nèi)核開發(fā)人員才感興趣。如果你好奇的話,可以訪問http://地址處的 “Kernel Hackers Guide”。
init進(jìn)程
init進(jìn)程是非內(nèi)核進(jìn)程中第一個(gè)被啟動(dòng)運(yùn)行的,因此它的進(jìn)程編號PID的值總是1。init讀它的配置文件/etc/inittab,決定需要啟動(dòng)的運(yùn)行級別(Runlevel)。從根本上說,運(yùn)行級別規(guī)定了整個(gè)系統(tǒng)的行為,每個(gè)級別(分別由0到6的整數(shù)表示)滿足特定的目的。如果定義了 initdefault級別,這個(gè)值就直接被選中,否則需要由用戶輸入一個(gè)代表運(yùn)行級別的數(shù)值。
輸入代表運(yùn)行級別的數(shù)字之后,init根據(jù)/etc/inittab文件中的定義執(zhí)行一個(gè)命令腳本程序。缺省的運(yùn)行級別取決于安裝階段對登錄程序的選擇:是使用基于文本的,還是使用基于X-Window的登錄程序。
rc命令腳本程序
我們已經(jīng)知道,當(dāng)運(yùn)行級別發(fā)生改變時(shí),將由/etc/inittab文件定義需要運(yùn)行哪一個(gè)命令腳本程序。這些命令腳本程序負(fù)責(zé)啟動(dòng)或者停止該運(yùn)行級別特定的各種服務(wù)。由于需要管理的服務(wù)數(shù)量很多,因此需要使用rc命令腳本程序。其中,最主要的一個(gè)是/etc/rc.d/rc,它負(fù)責(zé)為每一個(gè)運(yùn)行級別按照正確的順序調(diào)用相應(yīng)的命令腳本程序。我們可以想象,這樣一個(gè)命令腳本程序很容易變得難以控制!為了防止這類事件的發(fā)生,需要使用精心設(shè)計(jì)的方案。
對每一個(gè)運(yùn)行級別來說,在/etc/rc.d子目錄中都有一個(gè)對應(yīng)的下級目錄。這些運(yùn)行級別的下級子目錄的命名方法是rcX.d,其中的X就是代表運(yùn)行級別的數(shù)字。比如說,運(yùn)行級別3的全部命令腳本程序都保存在/etc/rc.d/rc3.d子目錄中。
在各個(gè)運(yùn)行級別的子目錄中,都建立有到/etc/rc.d/init.d子目錄中命令腳本程序的符號鏈接,但是,這些符號鏈接并不使用命令腳本程序在 /etc/rc.d/init.d子目錄中原來的名字。如果命令腳本程序是用來啟動(dòng)一個(gè)服務(wù)的,其符號鏈接的名字就以字母S打頭;如果命令腳本程序是用來關(guān)閉一個(gè)服務(wù)的,其符號鏈接的名字就以字母K打頭。
許多情況下,這些命令腳本程序的執(zhí)行順序都很重要。如果沒有先配置網(wǎng)絡(luò)接口,就沒有辦法使用DNS服務(wù)解析主機(jī)名!為了安排它們的執(zhí)行順序,在字母S 或者K的后面緊跟著一個(gè)兩位數(shù)字,數(shù)值小的在數(shù)值大的前面執(zhí)行。比如:/etc/rc.d/rc3.d/S50inet就會(huì)在 /etc/rc.d/rc3.d/S55named之前執(zhí)行(S50inet配置網(wǎng)絡(luò)設(shè)置,S55named啟動(dòng)DNS服務(wù)器)。
存放在/etc/rc.d/init.d子目錄中的、被符號鏈接上的命令腳本程序是真正的實(shí)干家,是它們完成了啟動(dòng)或者停止各種服務(wù)的操作過程。當(dāng) /etc/rc.d/rc運(yùn)行通過每個(gè)特定的運(yùn)行級別子目錄的時(shí)候,它會(huì)根據(jù)數(shù)字的順序依次調(diào)用各個(gè)命令腳本程序執(zhí)行。它先運(yùn)行以字母K打頭的命令腳本程序,然后再運(yùn)行以字母S打頭的命令腳本程序。對以字母K打頭的命令腳本程序來說,會(huì)傳遞Stop參數(shù);類似地對以字母S打頭的命令腳本程序來說,會(huì)傳遞 Start參數(shù)。
編寫自己的rc命令腳本
在維護(hù)Linux系統(tǒng)運(yùn)轉(zhuǎn)的日子里,肯定會(huì)遇到需要系統(tǒng)管理員對開機(jī)或者關(guān)機(jī)命令腳本進(jìn)行修改的情況。有兩種方法可以用來實(shí)現(xiàn)修改的目的:
● 如果所做的修改只在引導(dǎo)開機(jī)的時(shí)候起作用,并且改動(dòng)不大的話,可以考慮簡單地編輯一下/etc/rc.d/rc.local腳本。這個(gè)命令腳本程序是在引導(dǎo)過程的最后一步被執(zhí)行的。
● 如果所做的修改比較細(xì)致,或者還要求關(guān)閉進(jìn)程使之明確地停止運(yùn)行,則需要在/etc/rc.d/init.d子目錄中添加一個(gè)命令腳本程序。這個(gè)命令腳本程序必須可以接受Start和Stop參數(shù)并完成相應(yīng)的操作。
第一種方法,編輯/etc/rc.d/rc.local腳本,當(dāng)然是兩種方法中比較簡單的。如果想在這個(gè)命令腳本程序中添加內(nèi)容,只需要使用喜歡的編輯器程序打開它,再把打算執(zhí)行的命令附加到文件的末尾就可以了。這對一兩行的修改來說的確很便利。
如果確實(shí)需要使用一個(gè)命令腳本程序,這時(shí)必須選擇第二個(gè)方法。編寫一個(gè)rc命令腳本程序的過程并不像想象中那么困難。我們下面就給出一個(gè)例子,看看它是怎樣實(shí)現(xiàn)的(順便說一句,你可以把我們的例子當(dāng)作范本,按照自己的需要進(jìn)行修改和添加)。
假設(shè)你打算每隔60分鐘調(diào)用一個(gè)特殊的程序來彈出一條消息,提醒自己需要從鍵盤前面離開休息一會(huì)兒,命令腳本程序?qū)ㄏ旅鎺讉€(gè)部分:
● 關(guān)于這個(gè)命令腳本程序功能的說明(這樣就不會(huì)在一年之后忘記它);
● 在試圖運(yùn)行它之前驗(yàn)證這個(gè)命令腳本程序確實(shí)存在;
● 接受start和stop參數(shù)并執(zhí)行要求的動(dòng)作。
參數(shù)給定后,我們就可以編寫命令的腳本程序。這個(gè)程序很簡單,大家可以自己編寫一下,我在這里就不給出了。
編寫好新的命令腳本程序之后,再從相關(guān)的運(yùn)行級別子目錄中加上必要的符號鏈接,來控制這個(gè)命令腳本程序的啟動(dòng)或者停止。在我的印象中,只想讓它在運(yùn)行級別3或者運(yùn)行級別5中啟動(dòng),原因是我認(rèn)為只有這兩個(gè)運(yùn)行級別才是日常工作的地方。最后,希望這個(gè)命令腳本程序在進(jìn)入運(yùn)行級別6(重啟動(dòng))的時(shí)候被關(guān)閉。
激活或者禁止服務(wù)項(xiàng)目
有的時(shí)候會(huì)發(fā)現(xiàn),在引導(dǎo)的時(shí)候并不需要某個(gè)特定的服務(wù)被啟動(dòng)。如果你正在考慮使用Linux替換Windows NT的文件和打印服務(wù)器,就更是如此。
我們已經(jīng)知道,在特定的運(yùn)行級別子目錄中給符號鏈接改個(gè)名稱,就可以讓該服務(wù)不被啟動(dòng),如把其名稱的第一個(gè)字母由S改為K。一旦熟練掌握了命令行和符號鏈接,就會(huì)發(fā)現(xiàn)這是激活或者禁止服務(wù)的最快辦法。
在學(xué)習(xí)這個(gè)改名方法的時(shí)候,可能會(huì)覺得圖形化的操作界面ksysv比較容易掌握。雖然它原來是設(shè)計(jì)使用在KDE環(huán)境里的,但在 Red Hat Linux 7.2下缺省安裝的GNOME環(huán)境里也運(yùn)行得很好。如果想啟動(dòng)它,只需簡單地打開一個(gè)xterm窗口,并輸入ksysv命令就可以了。屏幕上會(huì)出現(xiàn)一個(gè)窗口,其中列出了能夠修改的全部參數(shù),需要時(shí)還包括在線幫助。
警告:如果是在一個(gè)現(xiàn)實(shí)中的系統(tǒng)上學(xué)習(xí)本文的知識,要多多運(yùn)用常識。當(dāng)試著對啟動(dòng)腳本程序進(jìn)行修改的時(shí)候,要記住所做的修改可能會(huì)造成你的系統(tǒng)不能正常工作,而且無法采用重啟動(dòng)的方法恢復(fù)。不要在正常運(yùn)轉(zhuǎn)的系統(tǒng)上實(shí)驗(yàn)新的設(shè)置,對你準(zhǔn)備修改的文件要全部進(jìn)行備份。最重要的是,在手邊要準(zhǔn)備一張引導(dǎo)盤以防不測
另外,虛機(jī)團(tuán)上產(chǎn)品團(tuán)購,超級便宜