一.基本命令的用法
1. alias??? 查看所有的別名
alias?? NAME=”value”??? 定義別名
unalis??????? 撤銷別名
nano?? .hashrc?? 在該文件中存放了一些別名命令
.?????? .hashrc? (或?? source? .hashrc)? 使寫入的命令生效
命令的別名:用于常用的長命令定義一個短的名字,以便使用(盡量不與內部命令和外部命令的名稱重復)
別名優先級>內部命令> 外部命令
若想使用別名的基本功能:可加\或? ‘?? ‘(例如: \ls??? 或?? ‘ ls’)
.bashrc??? //?? 存放別名的文件
2. cat? /etc/centos-release???? 查看發行版本
cat? /proc/meminfo??? 內存大小
uname?? -r??? 可查看內核版本
echo?? $SHELL? 查看當前的shell類型
cat ??/etc/shells? 查看支持的所有文件類型
/bin/csh??? 切換到csh類型的shell(不同shell類型支持的命令有所不同)
3. fdisk?? -l?????? 查看磁盤分區
ls??? /dev/sda*? ? ?//查看塊設備
lsblk???? 塊設備的狀況
4.? ifconfig???? 查看IP地址
ip??? a???????? 查看IP地址
5.? poweroff ????關機并斷電
halt??? 關機
shutdown? 關機(-r?? 代表重啟;-h? 代表關機;??? +m?? 相對時間,幾分鐘后關機;)
reboot?? 重啟
init?? (0關機;3字符界面;5圖形界面)可完成模式的切換(普通用戶不能用init5開啟圖形界面,沒有權限)
startx??? 開啟圖形界面;但沒有進行模式的切換
6.? df??? 查看掛載情況
7. rm –f? 文件路徑??? 刪除文件
8.執行命令分類:內部命令:shell自帶且通過某命令形式提供;外部命令:在文件系統的路徑下有對應的可執行程序
Hash緩存表:當外部命令執行時,默認會從PATH路徑下尋找該命令,找到后會將這條命令的路徑記錄在緩存中
type? pwd??? 判斷pwd是外/內部命令
enable??? 查看內部命令列表
type? 可查看命令是什么命令(外部命令顯示路徑)
enable? type?? 啟用內部命令
enable?? -n??? type???? 禁用內部命令
enable?? -n? 查看所有禁用的命令
echo $PATH?? 查看PATH的變量值(按該路徑進行搜索)
which?? 查看外部命令對應的路徑
which??? -a??? 查看命令所在的所有路徑
whereis?? 顯示外部命令的路徑還顯示子文檔的信息
9.? ?終端類型:設備終端、物理終端、虛擬終端、圖形終端、偽終端
who???????? //查看開啟了哪些終端,并可以看出以什么身份登錄的
whoami??? 顯示當前用戶身份
who am? I???? 顯示具體的用戶身份信息
w??? ??//顯示誰在登錄并顯示在執行什么命令
tty????? //查看哪個終端登錄;顯示完整設備路徑
chvt?? 數字????? //切換到某一終端
runlever???? 查看當前模式
id? -u? 用戶名?????? //查看用戶ID(root用戶UID=0,centos6中普通用戶UID為500;centos7中普通用戶UID=1000;可自行設置UID)
hostename?? 查看用戶名
echo?? $PS1?? 查看PS1的當前格式(修改PS1即可修改提示符的格式)
10.? mandb???? //加載whatis庫(centos7)
makewhatis??? //加載whatis庫
gedit??? 適合圖形界面的編輯
nano??? 字符界面的編輯
11.? ?date?? 查看系統時間日期 (外部命令)
clock?? 查看硬件時間(-s以硬件時鐘為準; -w 以系統時間為準 )
ntpdate 172.20.0.1?? 將系統時間與服務器時間同步
wall?? 發廣播
timedatectl???????? 時區
/etc/localtime???? 該文件記錄的時區
timedatectl??? status??? 查看所有的時區(centos7 中)
timedatectl? set-timezone?? Asia/Shanghai?? 設置時區
cal??? 查看日歷
12.? ?cp???? 文件路徑1?????? 文件路徑2?????? //復制文件到指定位置
rm?? -f?? 文件路徑???? 刪除文件
>?? f1????? 可以創建文件f1
13.? ?systemctl restart nework??? 實現網絡服務的重啟(在centos7中)
service? network? restart??????? 實現網絡服務重啟(在centos 6中)
cat ???/etc/sysconfig/i18n? 該文件記錄語言(centos6中)
echo? $LANG???? 存放語言變量
rz?? 傳輸文件到Linux
sz???? 傳輸文件到Windows
echo $HISTSIZE? 查看記錄歷史條數
/etc/issue?? 這是登錄前的提示文件
sosreport?? 選擇或者打包日志文件
rpm? -i?? /misc/cd/Packages/?? (如若在字符界面,可手動掛載光盤)
cat ???/etc/DIR_CLORS? //在該文件可以修改文件的顏色
14.? screen命令:
screen?? -S?? 名字??? 創建會話
screen?? -x?? 名字??? 加入會話
screen?? -ls? 顯示所有已經打開的會話
exit????? 退出會話
ctrl+a? 在按d????? 剝離會話
screen? -r???? 恢復會話
15.? echo 命令:
-E?? 默認不支持\解釋功能
-n?? 不自動換行
-e??? 啟用\字符的解釋功能
16.? nano?? /etc/profile.d/env.sh
PS1=”\[\e[1;36m\][\u@\h \w]\\$\[\e[0m\]”??? // 實現永久性修改提示符的格式和顏色
17.? gedit??? /etc/gdm/custom.conf??? //實現每次都是以root用戶的身份登錄
AutomaticLoginEnable=true?? //實現每次都是以root用戶的身份登錄
AutomaticLogin=root????? //實現每次都是以root用戶的身份登錄
18.? ?gedit??? /etc/sysconfig/network-scripts/ifcfg-ens32? (在centos 7中)
最后一條代碼中no改成yes???? //設置網卡的開機自啟動
Vim? /etc/ sysconfig/network-scripts/ifcfg-eth0(在centos6中)
ONBOOT=yes???? //設置網卡的自啟動
IPADDR=192.168.239.128??? //設置靜態IP地址
NETMAKE =255.2555.255.0?? //設置24 位子網掩碼
19.? 安裝軟件:
df? : 查看光盤掛載在那個路徑下
cd /media/CentOS_6.9_Final/Packages/???? 切換到該路徑下
ls? 可以看到很多的紅色壓縮文件
rpm -ivh screen-4.0.3-19.el6.x86_64.rpm?? 安裝screen
20.? ?快捷鍵:
Ctrl+Alt+f【1-6】?????? 開啟一個虛擬終端
Alt +f1?????? 返回圖形界面
Ctrl+c???? 中斷一個程序
Ctrl+d??? 結束命令
Ctrl+o??? 執行命令,并重新顯示本命令
Ctrl+l???? 清屏
Crtl +s???? 鎖屏
Ctrl? +q?? 允許屏幕輸出
Ctrl+z??? 掛起命令
21.? 命令提示符信息:#代表管理員用戶;$代表普通用戶
~?? 代表家目錄
/??? 代表根目錄
..?? 代表父目錄
.?? 代表當前目錄
二.命令行的擴展
(1).命令行的擴展、被括起來的集合
1.反向單引號:當一個命令調用另一個命令的輸出結果時使用? 例如:co?? `which –skip-alias? ls `? /data?? 將ls復制到/data下(變量和命令都識別)
2.單引號:只認為是普通字符串
3.雙引號:只認變量
4.{}效果:表示范圍,也可實現有規律的輸出?? 例如:echo? {1..10..2}
(2). Tab鍵可補全命令,文件,路徑
雙擊Tab 鍵,可顯示所有以一定字母開頭的命令或者某命令的子命令等等
(3).history:命令歷史,可查看之前的命令,并能實現快速重復執行之前命令;例如:??? !156(重復執行第156條命令)
Ctrl+r?? 在命令歷史中搜索命令;Ctrl+G?? :?? 在搜索中退出
(4).獲得幫助
三.基本命令用法
1.whatis:外部命令,功能:查看命令的功能描述(剛裝好的系統可能無法查看命令功能,在centos6可用makewhatis創建; 在centos7用? ? ? ? ? ? mandb創建?????? man?? -f???? 與該命令功能類似)
2.help?? 內部命令?? 可列出命令的用法
history?? -c?? 清除命令歷史,磁盤文件中還有記錄(若想完整刪除,先刪除文件,在清除緩存)
history?? -d? 刪除第幾條歷史
history?? -a?? 追加本次會話歷史寫入磁盤文件
history?? -r??? 讀取磁盤文件命令寫入緩存列表
history??? -w? 保存歷史列表到指定文件
history??? -n?? 讀取所有沒在歷史條目中讀取過的命令寫入緩存列表
history??? -p??? 執行命令但不產生歷史記錄
3.man?? 外部命令?? 列出外部命令的幫助
shutdown? –help?? 用此命令來查看幫助
date??? –help
touch? ` date? -d? “yesterday”? +%F`.log????? 創建一個昨天的日志文件
在man幫助中搜索關鍵字用?? /? 后跟關鍵字
/etc/profile.d/env.sh???? 存放修改的配置命令
- info ls?? 查看命令幫助的詳細信息
5.系統中自帶的幫助說明
/usr/share/doc 目錄,存放了大多數命令的幫助說明
6.在線文檔獲得幫助
? ? ? ?http://kbase.redhat.com
? ? ? ?http://www.redhat.com/docx
sosreport?? 收集系統所有日志信息的工具
(5)bash 的快捷鍵
四.文件管理
? ? www.pathname.com/fhs?? 該網站可以下載關于目錄作用的文檔
ldd? /bin/ls???? 可以查查看ls調用的庫文件
which?? init?? 查看init的文件路徑
du??? -sh? /*??? 可以查看某個目錄的大小
新加硬盤的識別:?? echo? ‘- – -‘ > /sys/class/scsi_host/host2/scan(不用于生產機)
文件名規則:文件名最長255個字符;包括路徑在內的文件名最長4095字節;除了/和NULL 所有字符有效但不推薦使用特殊字符;標準 ? ? ? ? ? ? Linux文件系統中(如ext4),文件名稱大小寫敏感。
藍色? —-目錄
綠色—-可執行文件
紅色——–壓縮文件(打包文件)
淺藍色——-鏈接文件(軟鏈接)
灰色—–? 普通文件
粉色——socket文件
淺黃色——-管道文件
Linux下的文件類型:
- :普通文件
d:??? 目錄文件
b:?? 塊設備
c:??? 字符設備
l :?? 符號鏈接文件
p:???? 管道文件pipe
s : 套接字文件socket
dd?? if=/dev/zero? of=/data/bigfile bs=1M? count=1024??? 輸出1M的空文件,填充0
hexdump? -C /data/bigfile???? 查看文件的二進制數據
pwd???? 顯示當前工作目錄?????? pwd? -p???? 顯示真實路徑
絕對路徑:從根開始描述的路徑
相對路徑:相對當前路徑的路徑;??? ..代表父目錄????? .? 代表當前目錄(特殊情況下相對于其他的路徑)
basename? 基名(只取文件本身的文件名)
dirname??? ??目錄名 (取路徑,不去文件名
五.命令
1.? ? ?cd? //切換路徑(~代表當前用戶家目錄;~user 可切換到user用戶家目錄;~+代表當前工作目錄;~-代表前一個工作目錄;-可返回上次訪 ? ? 問的目錄)
ls?? ??//列出當前目錄或指定目錄內容
ls –d? */????? //只顯示文件本身
ll –time=atime?? 文件路徑?? // 查看文件的讀時間
ctime???? //狀態的更改時間(代表元數據發生變化的時間)
stat?? 文件路徑???? //可查看文件的三個時間戳
2.? ?文件通配符(glod):
*匹配零個或多個字符(代表文件名的字符串)
?匹配任意一個字符
~+代表當前工作目錄
~-代表前一個工作目錄
【0-9】匹配數字范圍
【a-z】字母(顯示時是小寫大寫的輸出)
【A-Z】字母?? (顯示時是大寫小寫的輸出)
【user】匹配列表中的任意一個字符
【^wang】匹配列表中以外的字符(wang代表一個字符)
【:upper:】任意大寫字母
【:lower:】任意小寫字母
【:digit:】任意數字
【:alpha:】任意大小寫字母
【:alnum:】任意數字或字母
ls -R .[^.]*? 顯示當前目錄及子目錄所有的隱藏文件
3.? ?touch 創建文件和刷新時間戳
-a?? //僅改變atime和ctime
-m?? //僅改變mtime和ctime
-t?? //指定atime和mtime的時間戳
-c?? //只刷新時間,不創建時間
4.? ? cp命令:復制文件和目錄?? (復制一般文件,特殊文件會出現問題,例如塊文件)
-i???? 交互式 ,操作后出現提醒
-r??? 遞歸復制目錄及子目錄的所有內容
-f??? 強制覆蓋(類似刪除原文件,在建新文件)
-a??? 保留所有屬性(可以作為備份手段類似存檔;可以用來復制特殊文件)
-d??? 保留鏈接屬性
-p???? 保留文件的部分屬性
-v???? 顯示復制的過程
-u???? 只能復制原比目的更新的文件或目標不存在的為文件
–backup=numbered??? 若目標已經存在,將源文件自動做一個備份
5.? ?rename? 命令:實現批量文件的重命名
rename “conf”? “conf.bak”? file*?? //將file開頭的所有文件,將conf替換成conf.bak
rename “.bakf”? ” ?”? file*?? //將文件名改回來
6.? ?mv 命令:移動或重命名文件
mv?? -t?? /data??? /root/f1?? /root/b???? 將f1和b文件移動到data目錄下
rm命令:刪除文件(如若文件正在訪問不會立即釋放空間)
-f??? 強制刪除
-r? 遞歸刪除文件
7.? ? ?定義別名,將刪除的文件放到指定目下:alias? rm=”mv -t? /data”
若想刪除大型文件,立即釋放空間:1.中斷進程 killall?? vim
2.? ? ? ? ? ?> bigfile? 后再刪除?? rm? -f?? bigfile
8.Tree? 命令:顯示目錄樹
-d?? 只顯示目錄
-L :? 指定顯示層級數目
9.? ? mkdir 命令:創建目錄
-p? : 父目錄不存在,直接生成
-v :?? 顯示創建目錄過程
rmdir 刪除空目錄:
-p :? 若父目錄為空,刪除父目錄
-v:??? 顯示詳細信息
10.? ? ? cp?? /etc/hosts{,.back} 可以起到備份的作用
11.? ? 節點表(inode表):存放元數據的位置
節點編號(在分區中唯一)
到指定目錄后,ls? -i?? 即可查看文件的節點編號
df?? -i ??可以查看 分區節點的最大編號
echo file{1..524288}?? |xargs? touch??? //創建大量的文件
echo file{1..524288}?? |xargs? rm???? //刪除大量文件?? 或者直接刪除文件父目錄
12.? ? ? shred? 命令:刪除文件命令(刪除的相對徹底)
-z
-v:? 顯示過程
-n :反復覆蓋n次
例如:shred?? -zv?? -n?? 6?? hosts
13.? ? ?硬鏈接:創建鏈接后鏈接數增長;不支持目錄創建
鏈接數含義:一個文件有幾個文件名
ln? f1?? f2??? // 實現硬連接(實質上是一個文件起不同的文件名)
硬鏈接創建的文件是平等關系,但是不能跨分區設置硬鏈接
新建目錄的鏈接數為2,是因為子目錄下有個.(.代表當前目錄)
軟鏈接(符號鏈接):刪除原始文件,鏈接文件即丟失(可以跨分區設置軟鏈接)
ln?? -s? f2? f2_link??? 創建f2的軟鏈接(原始文件的大小與鏈接文件的大小沒關系)
軟鏈接文件的大小與路徑有關系
軟鏈接支持目錄創建
創建軟鏈接過程中,最好寫絕對路徑;若寫相對路徑,寫相對鏈接文件的路徑
軟硬鏈接區別:
- 硬鏈接:同一個文件多個名字;軟鏈接:一個文件對應的快捷鍵方式,不同文件
- 鏈接數:創建硬鏈接鏈接數增長
- 跨分區:軟鏈接可跨分區,硬鏈接不可
- 目錄:軟鏈接可實現目錄的鏈接,硬鏈接不可
- 原始文件與鏈接文件關系:硬鏈接原始文件與鏈接文件是同等關系
- 刪除:硬鏈接刪除原始文件,鏈接文件仍有效;軟鏈接無效
- 大?。河叉溄游募笮∠嗤?;軟鏈接文件大小與原始文件無關
14.? ? ?readlink?? 鏈接文件?? //查看鏈接文件對應的原始文件
15.? file 命令:查看文件的類型(查看文件的頭部信息)
-b? 列出文件結果不顯示原始文件
-L? 查看鏈接文件的原始文件的類型
-f?? 列出文件下所有文件名的文件信息
lsof??? //查看已刪除但沒有釋放磁盤空間的 文件路徑
例如:lsof?? |grep? deleted
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/93756