1,顯示當前使用的shell
[root@localhost ~]# echo $SHELL
2,顯示當前系統(tǒng)使用的所有shell
[root@localhost ~]# cat /etc/shells
3,顯示hash緩存
hash:顯示緩存 -r:清除緩存
4,多個命令可使用;符號分開
5,history
-c:清空命令歷史
-d:刪除歷史中指定的命令
#:顯示最近的#條歷史
-a:追加本次會話新執(zhí)行的命令歷史到列表至歷史文件
-n:讀歷史文件中未讀過的行到歷史列表
-r:讀歷史文件附加到歷史列表
-w:保存歷史列表到指定的歷史文件
-p:展開歷史參數(shù)成多個行,但不存在歷史列表中
-s:展開歷史參數(shù)成一行,附加在歷史列表后
6,Ctrl
+l:清屏,相當于clear命令
+c:取消命令的執(zhí)行
-a:將光標移動到命令行的最前面
-e:將光標移動到命令行的最后面
-u:刪除光標當前位置到行首
-k:刪除光標當前位置到行尾
7,Esc
-b:左移一個單詞
-f:右移一個單詞
8,本地幫助文件存放位置/usr/share/doc/
9,CentOS系統(tǒng)安裝完成后如果沒有man幫助可使用以下命令來制作數(shù)據(jù)庫
CentOS6使用:makewhatis
CentOS7使用:mandb
10,man命令的操作方法
space、^v、^f、^F:向文件尾翻屏
b、^b:向文件首部翻屏
d、^d:向文件尾部翻半屏
u、^u:向文件首部翻半屏
^n or ^e or ^j :向文件尾部翻一行
^y or ^p or ^k :向文件首部翻一行
q:退出
#:跳轉(zhuǎn)至第#行
1g:回到文件首部
g:翻至文件尾部
/keywork:以字符串為關鍵字,從當前位置向尾部搜索,不區(qū)分字符大小寫
n:下一個 N:上一個
?keywork:以字符串為關鍵字,從當前位置向首部搜索,不區(qū)分字符大小寫
n:下一個 N:上一個
11,文件系統(tǒng)的結(jié)構(gòu)
/boot:引導文件存放目錄,內(nèi)核文件(vmlinuz)、引導加載器(bootloader,grub)都存放于此 目錄。
/bin:供所有用戶使用的基本命令;不能關聯(lián)至獨立分區(qū),OS啟動即會用到的程序。
/sbin:管理類的基本命令;不能關聯(lián)至獨立分區(qū),OS啟動即會用到的程序。
/lib:啟動時程序依賴的基本共享庫文件以及內(nèi)核模塊文件(/lib/modules)
/lib64:專用于x86_64系統(tǒng)上的輔助共享庫文件存放位置
/etc:配置文件目錄
/home/USERNAME:普通用戶家目錄
/root:管理員的家目錄
/media:便攜式移動設備掛載點
/mnt:臨時文件系統(tǒng)掛載點
/dev:設備文件及特殊文件存儲位置
b:block device,隨機訪問
c:character device,線性訪問
/opt:第三方應用程序的安裝位置
/srv:系統(tǒng)上運行的服務用到的數(shù)據(jù)
/tmp:臨時文件存儲位置
/usr:universal shared,read-only data
bin:保證系統(tǒng)擁有完整功能而提供的應用程序
lib:32位使用
lib64:只存在64位系統(tǒng)
include:C程序的頭文件(header files)
share:結(jié)構(gòu)化獨立的數(shù)據(jù),例如doc,man等
local:第三方應用程序的安裝位置
/var:variable data files
cache:應用程序緩存數(shù)據(jù)目錄
lib:應用程序狀態(tài)信息數(shù)據(jù)
local:專用于為/usr/local下的應用程序存儲可變數(shù)據(jù)
lock:鎖文件
log:日志目錄及文件
opt:專用于為/opt下的應用程序存儲可變數(shù)據(jù)
run:運行中的進程相關數(shù)據(jù);通常用于存儲進程pid文件
spool:應用程序數(shù)據(jù)池
tmp:保存系統(tǒng)兩次重啟之間產(chǎn)生的臨時數(shù)據(jù)
/proc:用于輸出內(nèi)核與進程信息相關的虛擬文件系統(tǒng)
/sys:用于輸出當前系統(tǒng)上硬件設備相關信息虛擬文件系統(tǒng)
/selinux:security enhanced linux,selinux相關的安全策略等信息的存儲位置
12,文件類型
-:普通文件
d:目錄文件
b:塊設備
c:字符設備
l:符號鏈接文件
p:管道文件pipe
s:套接字文件socket
13,ls用法
-a:包含隱藏文件
-l:顯示額外的信息
-R:目錄遞歸通過
-ld:目錄和符號鏈接信息
-1:文件分行顯示
-S:按從大到小排序
-u:配合-t選項,顯示并按atime從新到舊排序
-U:不排序按目錄存放順序顯示
14,stat顯示文件的三個時間戳
access time:訪問時間,atime,讀取文件內(nèi)容
modify time:修改時間,mtime,改變文件內(nèi)容(數(shù)據(jù))
change time:改變時間,ctime,元數(shù)據(jù)發(fā)生改變
15,touch命令
touch [OPTION]... FILE...
-a:僅改變atime
-m:僅改變mtime
-t:STAMP:
[[cc]yy]mmddhhmm[.ss]
-c:如果文件不存在,則不予創(chuàng)建
16,cp命令
-i:交互式
-r,R:遞歸復制目錄及內(nèi)部的所有內(nèi)容
-a:歸檔,相當于-dR --preserv=all
-d:--no-dereference --preserv=links不復制原文件,只復制鏈接名
-p:等同--preserv=mode,ownership,timestamp
-v:--verbose
-f:--force
17,alias定義別名
顯示當前shell進程所有可用的命令別名
[root@localhost ~]# alias
定義別名NAME,其相當于執(zhí)行命令VALUE
[root@localhost ~]# alias NAME='VALUE'
在命令行中定義的別名,僅對當前shell進程有效。
如果想永久有效,要定義在配置文件中
僅對當前用戶:~/.bashrc
對所有用戶有效:/etc/bashrc
撤消別名使用:unalias
18,mv命令使用
常用選項:
-i:交互式
-f:強制
19,rm命令使用
常用選項:
-i:交互式
-f:強制刪除
-r:遞歸
20,tree顯示目錄樹
-d:只顯示目錄
-L level:指定顯示的層級數(shù)目
-P pattern:只顯示由指定pattern匹配到的路徑
21,mkdir創(chuàng)建目錄
-p:存在于不報錯,且可自動創(chuàng)建所需的各目錄
-v:顯示詳細信息
-m MODE:創(chuàng)建目錄時直接指定權(quán)限
22,rmdir刪除空目錄
-p:遞歸刪除父空目錄
-v:顯示詳細信息
23,rm刪除數(shù)據(jù)
-r:遞歸刪除目錄樹
-f:強制刪除不提示
24,STDOUT和STDERR重定向到文件
格式:命令 操作符號 文件名
>:把STDOUT重定向到文件
2>:把STDERR重定向到文件
>:把所有輸出重定向到文件
>:文件內(nèi)容分被覆蓋
set -C:禁止將內(nèi)容覆蓋已有文件,但可以追加強制覆蓋:>|
set +C:允許覆蓋
>>:原有內(nèi)容基礎上,追加內(nèi)容
2>:覆蓋重定向錯誤輸出數(shù)據(jù)流
2>>:追加重定向錯誤輸出數(shù)據(jù)流
標準輸出和錯誤輸出各自定向至不同位置:格式如下;
COMMAND > /path/to/file.out 2> /path/to/error.out
合并標準輸出和錯誤輸出為同一個數(shù)據(jù)流進行重定向:格式如下;
>:覆蓋重定向
>>:追加重定向
COMMAND > /path/to/file.out 2> 1 (順序很重要)
COMMAND >> /path/to/file.out 2>> 1
():合并多個程序的STDOUT
(cal 2007 ; cal 2008)> all.txt
25,tr - 轉(zhuǎn)換和刪除字符
tr [OPTION]...SET1 [SET2]
選項:
-c或--complerment:取字符集的補集
-d或--delete:刪除所有屬于第一字符集的字符
-s或--squeeze-repeats:把連續(xù)重復的字符以單獨一個字符表示
-t或--truncate-set1:將第一個字符集對應字符轉(zhuǎn)化為第二字符集對應的字符
使用來重定向標準輸入
某些命令能夠接受從文件中導入的STDIN
$tr ‘a-z’ ‘A-Z’ /etc/issue
該命令會把/etc/issue中的小寫字符都轉(zhuǎn)換成寫寫字符
tr –d abc /etc/fstab 刪除fstab文件中的所有abc中任意字符
[root@localhost ~]# cat > filea
mage
wangxiaochun
按ctrl+d離開,可以使用文件來代替鍵盤的輸入
[root@localhost ~]# cat > filea fileb
26,less:一頁一頁地查看輸入
ls -l /etc | less
mail:通過電子郵件發(fā)送輸入:
echo "testemail" | mail -s "test" user@example.com
lpr:把輸入發(fā)送給打印機
echo "testprint" | lpr-Pprinter_name