Linux基礎命令
1. 語法格式
命令的語法格式:
COMMAND OPTIONS ARGUMENTS
命令 選項 參數
命令:
命令
應用程序
腳本文件
選項:調整命令的作用方式
短選項:-char, 例如,-l, -d, -h
多個選項間要使用空白分隔:-l -d -h
合併使用:-ldh
長選項:--word, 例如:--long, --directory, --human-readable
長選項一般不能合併使用
注意:有些選項需要帶參數,稱爲選項參數
mkfs -t ext4
參數:
命令的作用對象
2.ls目錄處理命令
命令格式: 命令【-選項】【參數】
示例: ls -ltr /etc
說明:1)個別命令使用不遵循此格式
2)當有多個選項時,可以寫在一起
3)簡化選項與完整選項
命令所在路徑:/bin/ls
執行權限所有用戶
功能描述:顯示目錄文件
-----------------------------------------------------------
語法:ls 選項【-ald】【文件或目錄】
-a :列出當前目錄下的所有的文件和子目錄(包括隱藏文件)
-A :列出當前目錄下的所有的文件和子目錄(除‘當前目錄:用.來表示’和‘父目錄:用..來表示’外的所有文件)
-l:列出當前目錄下帶詳細信息的文件和子目錄
-h:列出當前目錄下進行‘單位換算'後的文件和子目錄(結合-l一起使用)
-d:列出當前目錄的自身屬性(結合-l使用)
-i: 列出當前目錄下文件和子目錄的inode
-r:以逆序顯示當前目錄下的文件和子目錄
-R :以遞歸顯示當前目錄下的文件和子目錄
3. type——命令的類型
內建命令: 由shell程序自帶的命令
查找方式:shell內建
外部命令: 本身是一個獨立的可執行程序文件,命令名即爲程序文件名
查找方式:通過shell的內置的環境變量PATH中指
定的路徑進行查找,且優先級從左往右;
基本的PATH定義 PATH=/bin:/sbin:/usr/bin:/usr/sbin
如何區分:type COMMAND
echo $PATH
4. history——命令歷史
bash的特性之一
保存的條數:
環境變量:HISTSIZE
echo $HISTSIZE
用戶退出時的持久保存位置:
環境變量:HISTFILE,通常默認爲用戶家目錄下的.bash_history
echo $HISTFILE
此文件中可保存的最大數目:
環境變量:HISTFILESIZE
用法:
history N: 顯示最近的N條,包括當前命令自身;
history -c: 清空命令歷史
history -d offset: 刪除指定的偏移處的命令條目
history -a [/path/to/some_history_file]: 將當前會話中的命令歷史寫入指定文件
HISTCONTROL:
ignoredups: 忽略重複的命令,連續的相同命令纔會爲重複
ignorespace: 忽略以空白字符打頭的命令
ignoreboth: 以上二者同行生效;
bash調用命令歷史列表中的命令:
上下箭頭
!#: 執行命令歷史中的第#條命令
!!: 執行上一條命令
!string: 執行命令歷史中最近一次以string開頭的命令;*
!$: 調用上一條命令的最後一個參數*
ESC, .: 即先按ESC鬆開了再按.功能同上
5. help/man/whatis——獲取命令幫助
5.1 help
內置命令:help COMMAND
例如:help history
外部命令:
1、COMMAND --help
eg:ifconfig --help 簡要幫助說明
2、手冊:manual
eg:man ifocnifg
5.2 man
手冊:有章節之分,1-9
man [#] COMMAND
可以指定章節,沒有指定就鎖定在第一次出現的章節裏
即在/usr/share/man中找到命令的對應gz包,解壓縮顯示
手冊的段落:
NAME: 命令名稱
DESCRIPTION: 命令功能的詳細描述
OPTIONS: 所有選項
SYNOPSIS: 使用格式
EXAMPLES: 使用示例
FILES: 與當前命令相關的配置文件
SEE ALSO: 可參考的其它手冊
幫助中的格式字串:
[]:可省略
<>: 不可省略
|: 二選一或多選一
...: 同類內容可以出現多個
eg:iostat -- help
man iostat
注意:man能夠爲除命令之外的配置文件、系統調用、庫調用等都能提供幫助手冊,它們分別位於不同的章節中;
1: 用戶命令
2: 系統調用
3: 庫調用
4: 設備文件
5: 配置文件
6: 遊戲
7:雜項
8:管理命令
5.3 whatis
如何查看指定命令在哪些章節下有幫助:
whatis COMMAND
注意:whatis根據數據庫執行查找操作,此庫爲系統定期更新;可使用makewhatis手動更新。
6. bash的重要特性命令補全和路徑補全
bash查找命令的方式:
外部命令查找:$PATH
第一次執行真正的查找操作;查找結果會緩存;
查看此緩存使用hash命令
-d: 清除指定名稱的緩存內容
-r: 清空緩存
bash的重要特性之一:命令補全
根據內建命令或外部命令的查找方式查找以用戶指定的字符串開頭的命令
如果用戶指定的開頭字符串能惟一標識某命令,則tab鍵可補全此命令
否則,則兩次tab鍵可顯示所有以指定字串開頭的命令
bash重要特性之一:路徑補全
以用戶指定的起始路徑進行文件名補全查找
每個絕對路徑都可以切割爲兩部分
基名
basename /path/to/somewhere
結果爲somewhere
目錄名
dirname /path/to/somewhere
結果爲/path/to
eg:basename $PWD
7.shutdown關機
參數:
shutdown –h/-r/-c
時間格式
now
+m
hh:mm
shutdown -h now
系統馬上關機且不重啓系統 (h-halt)
shutdown -r +10
系統在10分鐘後關機並且馬上啓動(r-reboot)
shutdown -h 11:20 系統在11:20關機
shutdown -c 取消關機命令
終止當前命令的執行:Ctrl+c
8. reboot重啓
-n 重啓前保留當前數據
-f 強制重啓計算機 force
-w 模擬重啓,並將數據寫入到“/var/log/wtmp”日誌文件中
-d 重啓,但不寫入日誌
-i 重啓計算機前關閉網絡
9. halt關機
-n 在關機前不做將記憶體資料寫回硬盤的動作
-w 並不會真的關機,只是把記錄寫入到“/var/log/wtmp”檔案中
-d 不會把記錄寫入到“/var/log/wtmp”檔案中
-f 強迫關機
-i 關機前先把所有網絡相關的配置先停止
-p 在關機之前先把所有網絡相關的裝置先停止
10. Poweroff & init
Poweroff
關機,切斷系統電源,halt的軟連接而已,執行的還是halt命令。而halt命令,可以這樣理解:halt就是調用shutdown -h。halt執行時,殺死應用進程,執行sysc系統調用,文件系統寫操作完成後就會停止內核。
init
init 0 爲關機,init 1爲重啓
11.date
date: 日期和時間
date [options] [+FORMAT]
%s: 時間戳計時法,從Unix元年(1970-01-01 00:00:00)到此刻所經過的秒數
%F, %D
%T
%Y
%m
%d
%H
%M
%S
date [MMDDhhmm[[CC]YY][.ss]]
eg:date -u 顯示當前的格林威治時間
date '+%F' 2015-03-13
date '+%D' 03/13/15
date '+%T' 10:41:35(本機時間)
date '+%Y' 2015 (年)
date '+%m' 03 (月)
date '+%d' 13 (日)
date '+%H' 10 (時)
date '+%M' 43 (分)
date '+%S' 28 (秒)
date '+%B' March(月)
date '+%T%n%D' 或者 date '+%T %D' 顯示當前日期
date '+%B%d' 顯示月份與日數
12. hclock
Linux有兩個時鐘:系統時鐘和硬件時鐘 date;hclock
硬件時鐘:
系統時鐘:Linux
hwclock handware clock
-s: 以硬件爲準
-w:以系統爲準
常用參數
-r,--show 讀取並打印硬件時鐘
-s,--hctosys 將硬件時鐘同步到系統時鐘
-w,--systohc 將系統時鐘同步到硬件時鐘
eg:顯示硬件時鐘
hwclock
hwclock -r
hwclock --show
修改日期並同步到硬件時鐘
date
Fri Mar 13 11:12:49 BEIST 2015
Date 03111112 (格式 mmddHHMM,即月日時分)
hwclock -w
13. which顯示指定命令的完整路徑
which: 顯示指定命令的完整路徑
eg:which ifconfig
/sbin/ifconfig
--skip-alias: 路過命令別名
eg:which --skip-alias ls