2017-03-25 16:35:42 node
剛開始學習Linux,因爲記憶力有限,把平時經常使用的Linux命令整理出來,以便隨時查閱: |
linux 基本命令 |
ls (list 顯示當前目錄下文件和目錄 ls -l 詳細顯示 =ll ) |
[root@linux ~]# ls [-aAdfFhilRS] 目錄名稱 |
[root@linux ~]# ls [--color={none,auto,always}] 目錄名稱 |
[root@linux ~]# ls [--full-time] 目錄名稱 |
參數: |
-a :所有的檔案,連同隱藏檔( 開頭爲 . 的檔案) 一塊兒列出來~ |
-A :所有的檔案,連同隱藏檔,但不包括 . 與 .. 這兩個目錄,一塊兒列出來~ |
-d :僅列出目錄自己,而不是列出目錄內的檔案數據 |
-f :直接列出結果,而不進行排序 (ls 預設會以檔名排序!) |
-F :根據檔案、目錄等信息,給予附加數據結構,例如: |
*:表明可執行檔; /:表明目錄; =:表明 socket 檔案; |:表明 FIFO 檔案; |
-h :將檔案容量以人類較易讀的方式(例如 GB, KB 等等)列出來; |
-i :列出 inode 位置,而非列出檔案屬性; |
-l :長數據串行出,包含檔案的屬性等等數據; |
-n :列出 UID 與 GID 而非使用者與羣組的名稱 (UID與GID會在帳號管理提到!) |
-r :將排序結果反向輸出,例如:本來檔名由小到大,反向則爲由大到小; |
-R :連同子目錄內容一塊兒列出來; |
-S :以檔案容量大小排序! |
-t :依時間排序 |
--color=never :不要依據檔案特性給予顏色顯示; |
--color=always :顯示顏色 |
--color=auto :讓系統自行依據設定來判斷是否給予顏色 |
--full-time :以完整時間模式 (包含年、月、日、時、分) 輸出 |
--time={atime,ctime} :輸出 access 時間或 改變權限屬性時間 (ctime) |
而非內容變動時間 (modification time) |
cat 由第一行開始顯示檔案內容 |
[root@linux ~]# cat [-AEnTv] |
參數: |
-A :至關於 -vET 的整合參數,可列出一些特殊字符~ |
-E :將結尾的斷行字符 $ 顯示出來; |
-n :打印出行號; |
-T :將 [tab] 按鍵以 ^I 顯示出來; |
-v :列出一些看不出來的特殊字符 |
tac 從最後一行開始顯示,能夠看出 tac 是 cat 的倒着寫! |
nl 顯示的時候,順道輸出行號! |
[root@linux ~]# nl [-bnw] 檔案 |
參數: |
-b :指定行號指定的方式,主要有兩種: |
-b a :表示不管是否爲空行,也一樣列出行號; |
-b t :若是有空行,空的那一行不要列出行號; |
-n :列出行號表示的方法,主要有三種: |
-n ln :行號在屏幕的最左方顯示; |
-n rn :行號在本身字段的最右方顯示,且不加 0 ; |
-n rz :行號在本身字段的最右方顯示,且加 0 ; |
-w :行號字段的佔用的位數。 |
more 一頁一頁的顯示檔案內容 |
空格鍵 (space):表明向下翻一頁; |
Enter :表明向下翻『一行』; |
/字符串 :表明在這個顯示的內容當中,向下搜尋『字符串』; |
:f :馬上顯示出文件名以及目前顯示的行數; |
q :表明馬上離開 more ,再也不顯示該檔案內容。 |
less 與 more 相似,可是比 more 更好的是,他能夠往前翻頁! |
空格鍵 :向下翻動一頁; |
[pagedown]:向下翻動一頁; |
[pageup] :向上翻動一頁; |
/字符串 :向下搜尋『字符串』的功能; |
?字符串 :向上搜尋『字符串』的功能; |
n :重複前一個搜尋 (與 / 或 ? 有關!) |
N :反向的重複前一個搜尋 (與 / 或 ? 有關!) |
q :離開 less 這個程序; |
head 只看頭幾行 |
[root@linux ~]# head [-n number] 檔案 |
參數: |
-n :後面接數字,表明顯示幾行的意思 |
tail 只看尾巴幾行 tail -200f logfile2 ( 顯示日誌最後 200 行 ) |
od 以二進制的方式讀取檔案內容! |
[root@linux ~]# od [-t TYPE] 檔案 |
參數: |
-t :後面能夠接各類『類型 (TYPE)』的輸出,例如: |
a :利用預設的字符來輸出; |
c :使用 ASCII 字符來輸出 |
d[size] :利用十進制(decimal)來輸出數據,每一個整數佔用 size bytes ; |
f[size] :利用浮點數值(floating)來輸出數據,每一個數佔用 size bytes ; |
o[size] :利用八進位(octal)來輸出數據,每一個整數佔用 size bytes ; |
x[size] :利用十六進制(hexadecimal)來輸出數據,每一個整數佔用 size bytes ; |
chmod ( chmod +R filename增長文件讀寫執行權限,+R 可讀,+W 可寫,+X 可執行 |
( chmod 777 filename 增長文件讀寫執行權限的另外一種方式, |
7=> 對應8進制的 111 可讀可寫可執行) |
chown ( chown -R haowen .將當前目錄下全部文件和目錄權限賦給 haowen |
,-R 包括子目錄) |
chgrp -R mysql . (把當前文件夾變動到mysql羣組,mysql是已經有的羣組)變動文件或目錄的所屬羣組。 |
umask 檔案預設權限: |
umask 指定的是『該默認值須要減掉的權限 !』 |
chattr (設定檔案隱藏屬性) |
lsattr (顯示檔案隱藏屬性) |
find ( find ./ -name file1 -print ,從當前目錄向下查找名爲 file1 的文件) |
mkdir ( mkdir dir1 ,新建目錄 dir1 ) |
mkdir [-mp] 目錄名稱 |
參數: |
-m :設定檔案的權限喔!直接設定,不須要看預設權限 (umask) 的臉色~ |
-p :幫助你直接將所須要的目錄遞歸創建起來! |
[root@linux ~]# rmdir [-p] 目錄名稱 |
參數: |
-p :連同上層『空的』目錄也一塊兒刪除 |
pwd Print Working Directory ( pwd ,顯示當前路徑 ) pwd -P 顯示出確實的路徑,而非使用鏈接(link)路徑 |
cd ( cd /usr/local/ 進入目錄 /usr/local/ , cd ../ 返回到上一級目錄 |
./ 當前目錄 ../父目錄 - 表明前一個工做目錄 ~表明[目前使用者身份]所在的家目錄 ~account表明account這個使用者的家目錄)針對 cd 的使用方法,若是僅輸入 cd 時,表明的就是『 cd ~ 』 |
mv ( mv file1 /home/haowen/ ,將文件移動到目錄 /home/haowen/下 |
,至關於 window 剪切 ) |
( mv file1 filenew1 ,將文件名改成 filenew1 ) |
[root@linux ~]# mv [-fiu] source destination |
[root@linux ~]# mv [options] source1 source2 source3 .... directory |
參數: |
-f :force 強制的意思,強制直接移動而不詢問; |
-i :若目標檔案 (destination) 已經存在時,就會詢問是否覆蓋! |
-u :若目標檔案已經存在,且 source 比較新,纔會更新 (update) |
cp ( cp file1 /home/haowen/ ,將文件複製copy到目錄 /home/haowen/下 |
cp -r dir1 /home/haowen/ |
cp file1 ./file2 複製文件並更名) |
[root@linux ~]# cp [-adfilprsu] 來源檔(source) 目的檔(destination) |
[root@linux ~]# cp [options] source1 source2 source3 .... directory |
參數: |
-a :至關於 -pdr 的意思; |
-d :若來源文件爲連結文件的屬性(link file),則複製連結文件屬性而非檔案自己; |
-f :爲強制 (force) 的意思,如有重複或其它疑問時,不會詢問使用者,而強制複製; |
-i :若目的檔(destination)已經存在時,在覆蓋時會先詢問是否真的動做! |
-l :進行硬式連結 (hard link) 的連結檔創建,而非複製檔案自己; |
-p :連同檔案的屬性一塊兒複製過去,而非使用預設屬性; |
-r :遞歸持續複製,用於目錄的複製行爲; |
-s :複製成爲符號連結文件 (symbolic link),亦即『快捷方式』檔案; |
-u :若 destination 比 source 舊才更新 destination ! |
rm ( rm file1 ,rm -r dir1,rm -rf dir2 刪除文件或目錄, f不提示輸入y |
[root@linux ~]# rm [-fir] 檔案或目錄 |
參數: |
-f :就是 force 的意思,強制移除; |
-i :互動模式,在刪除前會詢問使用者是否動做 |
-r :遞歸刪除啊!最經常使用在目錄的刪除了 |
touch 創建一個空的檔案,將某個檔案日期修訂爲目前 (mtime 與 atime) |
[root@linux ~]# touch [-acdmt] 檔案 |
參數: |
-a :僅修訂 access time; |
-c :僅修改時間,而不創建檔案; |
-d :後面能夠接日期,也可使用 --date="日期或時間" |
-m :僅修改 mtime ; |
-t :後面能夠接時間,格式爲[YYMMDDhhmm] |
file 若是你想要知道某個檔案的基本數據,例如是屬於 ASCII 或者是 data 檔案,或者是 binary , 且其中有沒有使用到動態函式庫 (share library) 等等的信息,就能夠利用 file 這個指令來檢閱喔! |
which (尋找『執行檔』) 這個指令是根據『PATH』這個環境變量所規範的路徑,去搜尋『執行檔』的檔名 |
[root@linux ~]# which [-a] command |
參數: |
-a :將全部能夠找到的指令均列出,而不止第一個被找到的指令名稱 |
whereis (從數據庫尋找特定檔案) |
[root@linux ~]# whereis [-bmsu] 檔案或目錄名 |
參數: |
-b :只找 binary 的檔案 |
-m :只找在說明文件 manual 路徑下的檔案 |
-s :只找 source 來源檔案 |
-u :沒有說明檔的檔案! |
功能說明:計算字數。 |
語 法:wc [-clw][--help][--version][文件名] |
補充說明:利用wc指令咱們能夠計算文件的Byte數、字數、或是列數,若不指定任何文件名稱,或是所給予的文件名爲"-",則wc指令會從標準輸入設備讀取數據。假設不給予其參數,wc指令會一併顯示列數、字數和Byte數 |
參 數: |
-c 只顯示Byte數,亦即字符數; |
-l 只顯示列數; |
-w 只顯示字數; |
-m 一樣顯示字符數 |
--help 在線幫助; |
--version 顯示此軟件的版本信息。 |
locate 從數據庫列出某個檔案的完整檔名 |
find ./ -name index.jsp 查找當前目錄下名稱爲index.jsp的文件 |
grep ( grep "mobile=13712345678" logfile1 ,在logfile1中 |
搜索查找內容 "mobile=13712345678" ) |
ping ( ping 61.129.78.9 ,ping www.163.com ,測試網絡鏈接是否正常 ) |
ifconfig ( ifconfig ,查看本機 IP地址,子網掩碼等 ) |
ps ( ps aux 查看系統中已經啓動的進程, ps aux | grep programe1 , |
查看程序1是否正在運行 |
kill ( kill -9 2325 ,殺死進程號爲 2325的進程, |
killall programe1 ,殺死programe1進程 ) |
reboot ( 重啓系統 ) |
init 0 ( 關機 ,僅 root 用戶有權操做 ) |
init 6 ( 重啓系統 ,僅 root 用戶有權操做 ) |
gzip ( gzip file1 ,壓縮文件 file1 ) |
gunzip ( gunzip file1.gz 解壓縮文件 file1.gz ) |
tar -zcvf ( tar -zcvf dir1.tar.gz ./dir1 ,將當前目錄下 dir1目錄全部內容 |
壓縮打包,包名dir1.tar.gz ) |
tar -zxvf ( tar -zxvf dir1.tar.gz ,解開壓縮包 ) |
echo "hello!" >> file1 ( 將 "hello" 添加到文件 file1後面, |
當 file1 不存在就建立 file1 |
vi file2 ( vi 編即器新建文件 file2) |
...輸入內容 welcome.. |
( 按 i 進入 insert 狀態 即插入模式 ,按 Esc 退出插入模式 |
在非插入模式下按 dd 刪除光標當前行,按 x 刪除當前字, |
按 j,n,l移動光標 ) |
:wq ( 保存退出 ) :q! (不保存退出) |
增長環境變量 |
[root@linux ~]# echo $PATH |
[root@linux ~]# PATH="$PATH":/root |
env 顯示系統的一些環境變量 |
set 顯示系統的全部變量 |
chmod: |
Linux/Unix 的檔案調用權限分爲三級 : 檔案擁有者、羣組、其餘。 |
利用 chmod 能夠藉以控制檔案如何被他人所調用。 |
+ 表示增長權限、- 表示取消權限、= 表示惟一設定權限。 |
r 表示可讀取,w 表示可寫入,x 表示可執行, |
1. 將檔案 file1.txt 設爲全部人皆可讀取 : |
chmod ugo+r file1.txt 或 chmod 444 file1.txt |
2. 將文件 file2 設爲屬主可讀寫執行,Group,other ,只能讀 |
chmod 744 file2 ( 7=> "111" ,4=>"100" 二進制 ) |
3. 將文件 file3 設爲屬主可讀寫執行,Group,other ,無權限操做不能讀寫執行) |
chmod 700 file3 ( 7=> "111" ,0=>"000" ) |
其中a,b,c各爲一個數字,分別表示User、Group、及Other的權限。 |
r=4,w=2,x=1 若要rwx屬性則4+2+1=7; 若要rw-屬性則4+2=6; |
若要r-x屬性則4+1=5 |
tar: |
tar 調用gzip |
gzip是GNU組織開發的一個壓縮程序,.gz結尾的文件就是gzip壓縮的結果。 |
與gzip相對的解壓程序是gunzip。tar中使用-z這個參數來調用gzip。 |
# tar -czf all.tar.gz *.jpg |
這條命令是將全部.jpg的文件打成一個tar包,而且將其用gzip壓縮,生成一個 |
gzip壓縮過的包,包名爲all.tar.gz |
# tar -xzf all.tar.gz 這條命令是將上面產生的包解開。 |
date 顯示日期的指令: |
cal 顯示日曆的指令: |
bc 簡單好用的計算器: |
[Tab] 按鍵 (按兩次) 命令補全: |
[Ctrl]-c 按鍵 中斷目前程序: |
[Ctrl]-d 按鍵 (至關於輸入 exit) 鍵盤輸入結束: |
info 在線求助 : |
who 要看目前有誰在在線: |
finger 顯示關於系統用戶的信息 |
netstat -a 看網絡的聯機狀態: |
ntsysv 設置服務隨系統啓動時同時啓動 |
shutdown ,shutdown -h now 慣用的關機指令: |
reboot, halt, poweroff 從新開機,關機: |
--- 系統相關的命令:--- |
dmesg : 例如 dmesg | more 顯示系統的診斷信息,操做系統版本號,物理內及其它信息 |
df : 例如 df -h 顯示硬盤空間 |
du : 查看目錄中各級子目錄使用的硬盤空間 |
free: 查看系統內存,虛擬內存(交換空間)的大小佔用狀況 |
top: 動態實時查看系統內存,CPU,進程 |
hostname 查看主機名: |
hostname 新主機名 修改主機名(臨時的,重啓就沒了): |
man 命令:查看該命令的基礎用法 |
info 命令:查看該命令的基礎用法 |
ls -l /lib/modules/`uname -r`/kernel/fs 查看Linux 支持的檔案系統有哪些 |
cat /proc/filesystems 查看Linux目前已啓用的檔案系統 |
type 查詢某個指令是來自於外部指令(指的是其它非 bash 套件所提供的指令) 或是內建在 bash 當中的指令 |
[root@linux ~]# type [-tpa] name |
參數: |
:不加任何參數時,則 type 會顯示出那個 name 是外部指令仍是 bash 內建的指令! |
-t :當加入 -t 參數時,type 會將 name 以底下這些字眼顯示出他的意義: |
file :表示爲外部指令; |
alias :表示該指令爲命令別名所設定的名稱; |
builtin :表示該指令爲 bash 內建的指令功能; |
-p :若是後面接的 name 爲指令時,會顯示完整文件名(外部指令)或顯示爲內建指令; |
-a :會將由 PATH 變量定義的路徑中,將全部含有 name 的指令都列出來,包含 alias |
myname=pqb 變量的設定 |
PATH="$PATH":/home/dmtsai/bin 變量的累加 |
echo $myname 變量的查看 |
unset myname 變量的取消 |
在來看看關機,關閉系統使用Shutdown命令,確保用戶和系統的資料完整。只有root用戶才能使用這個命令。 |
通常的用戶是不容許執行這個命令的。 |
咱們先看看showdown語法: |
shutdown [options] when [message] |
options: -r 表示重啓,-h表示系統服務停滯(halt)後,馬上關機,-f表示快速重啓 |
when: 爲shutdown指定時間。hh:mm:絕對時間,hh指小時,mm指分鐘;如08:30,+m:m分鐘後執行, |
now=+0,也就是馬上執行 |
message:表示系統的廣播信息,通常提示各個用戶系統關機或重啓,要求用戶保存資料後退出。 |
咱們來看看幾個例子: |
shutdown -h now 馬上關機 |
shutdown -h 21:30 今天21:30關機 |
shutdown -h +10 十分鐘後關機 |
shutdown -r now 馬上重啓 |
shutdown -r +10 ‘the system will reboot’ 10分鐘後重啓,管理員提示用戶系統要重啓了,便於用戶保存工 |
做中的資料。只有root用戶才能使用這個命令。 |
建立文件 |
建立文件是指建立一個通常的普通文件,而且這個文件爲空,咱們可使 |
用touch命令來創建通常文件,以下操做: |
[root@Linux two]# touch 111.txt |
搜索文件 |
咱們先來學習一下如何搜索文件,特別是剛開始學習Linux的時候,本身創建的文件不知道放在哪裏了,常有發 |
生。若是知道文件名,殊不知道文件在那個目錄下面了,咱們就可使用locate命令來搜索文件。看以下操做 |
: |
[root@Linux one]# locate install.log |
/root/install.log |
/root/install.log.syslog |
看一下,咱們一下就搜索了兩個與install.log相關的文件,他們都在/root目錄下,同時咱們感受到,使用這個命 |
令搜索文件的速度比較快,其實要使用這個命令,必須配合數據庫來使用,由於這個命令是從數據庫中來搜索 |
文件,這個數據庫的更新速度是7天更新一次。以下操做: |
[root@Linux one]# touch 001.txt |
[root@Linux one]# locate 001.txt |
發現這個命令找不到新創建的文件,因此咱們要使用這個命令搜索文件以前,必須本身更新一下數據庫(更新數據庫須要root權限),以下 |
操做: |
[root@Linux one]# updatedb |
[root@Linux one]# locate 001.txt |
/root/one/001.txt |
看看,若是執行updatedb這個命令更新數據庫以後,咱們就能夠找到咱們所須要的數據。不過更新數據庫的時 |
間須要一段時間。 |
locale能看語言環境 |
保存語言信息的文件在/etc/sysconfig/i18n中。 |
/sbin/service xinetd restart|start|stop 啓動後臺服務, |
/sbin/chkconfig --list |more 顯示系統服務啓動狀況,顯示了運行級別0到運行級別6的狀況. |
這些服務都是靠系統腳本init啓動的。還有一些不是靠系統腳本啓動的而下面會看到一些特殊服務,他們不是 |
靠init 啓動的。是靠xinetd啓動的,是一個獨立的互聯網服務器的服務器是一個超級服務其,能夠啓動不少的子服 |
務器。 |
你們看到 xinetd這個服務只要他是開啓的,就能夠運行他下面的服務器,它下面的大部分都是關閉的,只 |
有一個是開啓的,若是咱們想開啓一個服務可使用chkconfig命令,例如咱們想開啓 rsync服務,咱們可使 |
用chkconfig rsync on|off 命令。 |
mount |
在mount命令不使用任何選項和參數的時候將顯示當前linux系統中以掛載的文件系統信息。 |
mount Cttype dev dir |
光盤文件系統類型是:iso9660;dev表示須要掛載文件系統的設備名稱,光盤驅動器的設備名稱是/dev/cdrom; dir表示掛載點,即掛載到的文件目錄路徑。 |
首先介紹光盤的掛載方法: |
mount -t iso9660 /dev/cdrom /media/cdrom |
列出系統中全部存儲設備 |
fdisk -l命令 |
使用「vfat」文件系統類型表示全部的fat文件系統類型,包括fat16和fat32,ntfs仍是使用ntfs表示。 |
u盤的掛載方法 |
mount -t vfat /dev/sdb1 /mnt/ |
mount -t ntfs /dev/sdb1 /mnt/ |
umount命令用於卸載已經掛載的文件系統,基本格式如:umount dir device |
對於光盤文件系統的卸載可使用,如下兩條命令中的任意一條 |
umount /dev/cdrom |
umount /media/cdrom |
u盤的卸載 |
umount /dev/sdb1 |
eject命令 |
eject 彈出光盤命令 |
eject -t 光盤驅動器自動回收 |
cut |
使用權限:全部使用者 |
用法:cut -cnum1-num2 filename |
說明:顯示每行從開頭算起 num1 到 num2 的文字。 |
範例: |
shell>> cat example |
test2 |
this is test1 |
shell>> cut -c0-6 example 開頭算起前 6 個字元 |
test2 |
this i |
指令名稱:ln |
使用權限:全部使用者 |
使用方式:ln [options] source dist,其中 option 的格式爲: |
[-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}] |
[--help] [--version] [--] |
說明:Linux/Unix 檔案系統中,有所謂的連結(link),咱們能夠將其視爲檔案的別名,而連結又可分爲兩種:硬連結(hard link)與軟連結(symbolic link),硬連結的意思是一個檔案能夠有多個名稱,而軟連結的方式則是產生一個特殊的檔案,該檔案的內容是指向另外一個檔案的位置。硬連結是存在同一個檔案系統中,而軟連結卻能夠跨越不一樣的檔案系統。 |
ln source dist 是產生一個連結(dist)到 source,至於使用硬連結或軟鏈結則由參數決定。 |
不管是硬連結或軟鏈結都不會將本來的檔案複製一份,只會佔用很是少許的磁碟空間。 |
-f:鏈結時先將與 dist 同檔名的檔案刪除-d:容許系統管理者硬鏈結本身的目錄-i:在刪除與 dist 同檔名的檔案時先進行詢問-n:在進行軟連結時,將 dist 視爲通常的檔案-s:進行軟鏈結(symbolic link)-v:在連結以前顯示其檔名-b:將在鏈結時會被覆寫或刪除的檔案進行備份-S SUFFIX:將備份的檔案都加上 SUFFIX 的字尾-V METHOD:指定備份的方式--help:顯示輔助說明--version:顯示版本 |
範例: |
將檔案 yy 產生一個 symbolic link:zz |
ln -s yy zz |
將檔案 yy 產生一個 hard link:zz |
ln yy xx |
名稱:at |
使用權限:全部使用者 |
使用方式:at -V [-q queue] [-f file] [-mldbv] TIME |
說明:at 可讓使用者指定在 TIME 這個特定時刻執行某個程式或指令,TIME 的格式是 HH:MM其中的 HH 爲小時,MM 爲分鐘,甚至你也能夠指定 am, pm, midnight, noon, teatime(就是下午 4 點鍾)等口語詞。 |
若是想要指定超過一天內的時間,則能夠用 MMDDYY 或者 MM/DD/YY 的格式,其中 MM 是分鐘,DD 是第幾日,YY 是指年份。另外,使用者甚至也可使用像是 now + 時間間隔來彈性指定時間,其中的時間間隔能夠是 minutes, hours, days, weeks |
另外,使用者也可指定 today 或 tomorrow 來表示今天或明天。當指定了時間並按下 enter 以後,at 會進入交談模式並要求輸入指令或程式,當你輸入完後按下 ctrl+D 便可完成全部動做,至於執行的結果將會寄回你的賬號中。 |
把計: |
-V:印出版本編號 |
-q:使用指定的佇列(Queue)來儲存,at 的資料是存放在所謂的 queue 中,使用者能夠同時使用多個 queue,而 queue 的編號爲 a, b, c... z 以及 A, B, ... Z 共 52 個 |
-m:即便程式/指令執行完成後沒有輸出結果, 也要寄封信給使用者 |
-f file:讀入預先寫好的命令檔。使用者不必定要使用交談模式來輸入,能夠先將全部的指定先寫入檔案後再一次讀入 |
-l:列出全部的指定 (使用者也能夠直接使用 atq 而不用 at -l) |
-d:刪除指定 (使用者也能夠直接使用 atrm 而不用 at -d) |
-v:列出全部已經完成但還沒有刪除的指定 |
例子: |
三天後的下午 5 點鍾執行 /bin/ls: |
at 5pm + 3 days /bin/ls |
三個星期後的下午 5 點鍾執行 /bin/ls: |
at 5pm + 2 weeks /bin/ls |
明天的 17:20 執行 /bin/date: |
at 17:20 tomorrow /bin/date |
1999 年的最後一天的最後一分鐘印出 the end of world ! |
at 23:59 12/31/1999 echo the end of world ! |
名稱:cal |
使用權限:全部使用者 |
使用方式:cal [-mjy] [month [year]] |
說明: |
顯示日曆。若只有一個參數,則表明年份(1-9999),顯示該年的年曆。年份必須所有寫出:``cal 89\ 將不會是顯示 1989 年的年曆。使用兩個參數,則表示月份及年份。若沒有參數則顯示這個月的月曆。 |
1752 年 9 月第 3 日起改用西洋新曆,因這時大部份的國家都採用新曆,有 10 天被去除,因此該月份的月曆有些不一樣。在此以前爲西洋舊曆。 |
匡兜: |
-m:以星期一爲每週的第一天方式顯示。 |
-j:以凱撒歷顯示,即以一月一日起的天數顯示。 |
-y:顯示今年年曆。 |
範例: |
cal:顯示本月的月曆。 |
[root@mylinux /root]# date |
Tue Aug 15 08:00:18 CST 2000 |
[root@mylinux /root]# cal |
... |
cal 2001:顯示公元 2001 年年曆。 |
[root@mylinux /root]# cal 2001 |
... |
cal 5 2001:顯示公元 2001 年 5 月月曆。 |
[root@mylinux /root]# cal 5 2001 |
名稱:crontab |
使用權限:全部使用者 |
使用方式: |
crontab [ -u user ] filecrontab [ -u user ] { -l | -r | -e } |
說明: |
crontab 是用來讓使用者在固定時間或固定間隔執行程式之用,換句話說,也就是相似使用者的時程表。-u user 是指設定指定 user 的時程表,這個前提是你必需要有其權限(好比說是 root)纔可以指定他人的時程表。若是不使用 -u user 的話,就是表示設定本身的時程表。 |
參數: |
-e:執行文字編輯器來設定時程表,內定的文字編輯器是 VI,若是你想用別的文字編輯器,則請先設定 VISUAL 環境變數來指定使用那個文字編輯器(好比說 setenv VISUAL joe) |
-r:刪除目前的時程表 |
-l:列出目前的時程表 |
時程表的格式以下: |
f1 f2 f3 f4 f5 program |
其中 f1 是表示分鐘,f2 表示小時,f3 表示一個月份中的第幾日,f4 表示月份,f5 表示一個星期中的第幾天。program 表示要執行的程式。 |
當 f1 爲 * 時表示每分鐘都要執行 program,f2 爲 * 時表示每小時都要執行程式,其他類推 |
當 f1 爲 a-b 時表示從第 a 分鐘到第 b 分鐘這段時間內要執行,f2 爲 a-b 時表示從第 a 到第 b 小時都要執行,其他類推 |
當 f1 爲 */n 時表示每 n 分鐘個時間間隔執行一次,f2 爲 */n 表示每 n 小時個時間間隔執行一次,其他類推 |
當 f1 爲 a, b, c,... 時表示第 a, b, c,... 分鐘要執行,f2 爲 a, b, c,... 時表示第 a, b, c...個小時要執行,其他類推 |
使用者也能夠將全部的設定先存放在檔案 file 中,用 crontab file 的方式來設定時程表。 |
例子: |
每個月天天每小時的第 0 分鐘執行一次 /bin/ls: |
0 7 * * * /bin/ls |
在 12 月內, 天天的早上 6 點到 12 點中,每隔 20 分鐘執行一次 /usr/bin/backup: |
0 6-12/3 * 12 * /usr/bin/backup |
週一到週五天天下午 5:00 寄一封信給 alex@domain.name: |
0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata |
每個月天天的午夜 0 點 20 分, 2 點 20 分, 4 點 20 分....執行 echo "haha" |
20 0-23/2 * * * echo "haha" |
注意: |
當程式在你所指定的時間執行後,系統會寄一封信給你,顯示該程式執行的內容,如果你不但願收到這樣的信,請在每一行空一格以後加上 > /dev/null 2>&1 便可。 |
名稱:sleep |
使用權限:全部使用者 |
使用方式:sleep [--help] [--version] number[smhd] |
說明:sleep 能夠用來將目前動做延遲一段時間 |
參數說明: |
--help:顯示輔助訊息 |
--version:顯示版本編號 |
number:時間長度,後面可接 s,m,h 或 d |
其中 s 爲秒,m 爲 分鐘,h 爲小時,d 爲日數 |
例子: |
顯示目前時間後延遲 1 分鐘,以後再次顯示時間: |
date;sleep 1m;date |
名稱: finger |
使用權限: 全部使用者 |
使用方式: finger [options] user[@address] |
說明:finger 可讓使用者查詢一些其餘使用者的資料。 |
範例:下列指令能夠查詢本機管理員的資料: |
finger root |
名稱:last |
使用權限:全部使用者 |
使用方式:shell>> last [options] |
說明:顯示系統開機以來獲是從每個月初登入者的訊息 |
把計: |
-R 省略 hostname 的欄位 |
-num 展現前 num 個 |
username 展現 username 的登入訊息 |
tty 限制登入訊息包含終端機代號 |
範例: |
shell>> last -R -2 |
名稱:write |
使用權限:全部使用者 |
使用方式: |
write user [ttyname] |
說明:傳訊息給其餘使用者 |
把計: |
user:預備傳訊息的使用者賬號 |
ttyname:若是使用者同時有兩個以上的 tty 連線,能夠自行選擇合適的 tty 傳訊息 |
例子.1: |
傳訊息給 Rollaend,此時 Rollaend 只有一個連線: |
write Rollaend |
接下來就是將訊息打上去,結束請按 ctrl+c |
例子.2 :傳訊息給 Rollaend,Rollaend 的連線有 pts/2,pts/3: |
write Rollaend pts/2 |
接下來就是將訊息打上去,結束請按 ctrl+c |
注意:若對方設定 mesg n,則此時訊席將沒法傳給對方 |
名稱:expr |
使用權限:全部使用者 |
### 字串長度 |
shell>> expr length "this is a test" |
14 |
### 數字商數 |
shell>> expr 14 % 9 |
5 |
### 從位置處抓取字串 |
shell>> expr substr "this is a test" 3 5 |
is is |
### 數字串 only the first character |
shell>> expr index "testforthegame" e |
2 |
### 字串真實重現 |
shell>> expr quote thisisatestformela |
thisisatestformela |
指令:clear |
用途:清除螢幕用。 |
使用方法:在 console 上輸入 clear。 |