一、Linux指令進階
1.檢視端口是否占用
netstat -ntulp | grep PORT_id
2. curl指令
curl url網址
: 傳回該網址源碼
更多介紹請看: curl網站開發指南
3.tar.xz檔案解壓
解壓tar.xz檔案:先xz -d xxx.tar.xz 将xxx.tar.xz解壓成xxx.tar 然後,再用tar xvf xxx.tar來解包
4. Linux壓縮檔案
#壓縮
[root@localhost tmp]# tar -zvcf buodo.tar.gz buodo
[root@localhost tmp]# tar -jvcf buodo.tar.bz2 buodo
#解壓
[root@localhost tmp]# tar -zvxf buodo.tar.gz
[root@localhost tmp]# tar -jvxf buodo.tar.bz2
————————————————
5. 檢視系統位數
Linux檢視目前系統位數: getconf LONG_BIT
- 檢視系統版本資訊
-
cat /etc/os-release
二、Linux基礎指令
1.pwd(英文全稱:print work directory)
檢視目前所在檔案夾的位置
2.跳轉指令界面 init 3
回到圖形界面 init 5
startx 若圖形界面未開啟(即開機狀态為字元界面),這是可以應用該指令來打開圖形界面.
init後面數字的具體含義
0:關機
1:單使用者模式
2:無網絡支援的多使用者模式
3:有網絡支援的多使用者模式
4:保留,未使用
5:有網絡支援有X-Window支援的多使用者模式
6:重新開機系統,即重新開機
4.更改Linux預設啟動方式
- vi /etc/inittab //浏覽檔案字元
- 點選i鍵,進行編輯(将5改為2)
-
退出并儲存的步驟
按Esc鍵
輸入
:wq
5.關機,重新開機
關機:
- shutdown -h now
- halt
- init 0
重新開機:
- shutdown -r now
- init 6
- reboot : reboot的工作過程差不多跟halt一樣﹐不過它是引發主機重新開機
6.su 或者 su root 可以切換到超級使用者 (#)
切換使用者普通使用者 : su 普通使用者使用者名 ($)
7.
<TAB>
鍵
自動補齊功能
8.man + 指令名
可以提供該指令的參數(幫助指令)
9.指令 + --help
man+指令:擷取相關指令的幫助資訊
重要幫助指令, 每個手冊标題的左右側是指令名和手冊頁所屬的章節号。标題的中間是章節的名稱。
部 分 | 内 容 |
NAME | 指令的名稱和簡短描述 |
SYNOPSIS | 文法的描述 |
DESCRIPTION | 指令的較長的描述 |
OPTIONS | 提供的所有可用選項的描述 |
COMMANDS | 在程式運作時可以配置設定給該程式的說明 |
FILES | 使用某種方法連接配接到指令的檔案 |
SEE ALSO | 相關指令的提示 |
DIAGNOSTICS | 程式可能出現的錯誤消息 |
EXAMPLES | 調用指令的示例 |
BUGS | 指令的已知錯誤和問題 |
Info+指令: 擷取相關指令的詳細使用方法
(退出按q即可)
10.上下翻頁
Shift+PgUp/PgDn
11.history
顯示曆史記錄和執行過的指令指令。
!執行指定序号的曆史指令。例如,要執行第2個曆史指令,則輸入!2。
在記憶體中,曆史指令僅能夠存儲1000條曆史指令,該數量是由環境變量 HISTSIZE進行控制。預設是不顯示指令的執行時間,指令的執行時間,history 已經記錄,隻是沒有顯示。
-N: 顯示曆史記錄中最近的N個記錄;
-c:清空目前曆史指令;
-a:将曆史指令緩沖區中指令寫入曆史指令檔案中;
-r:将曆史指令檔案中的指令讀入目前曆史指令緩沖區;
-w:将目前曆史指令緩沖區指令寫入曆史指令檔案中;
-d:删除曆史記錄中第offset個指令
-n:讀取指定檔案
顯示執行曆史記錄時間:
1、預設情況下,history并不記錄指令的執行時間,分析起來很困難。我們可以使用HISTTIMEFORMAT在曆史中顯示TIMESTAMP。
2、把上面的 export HISTTIMEFORMAT="%F %T " 指令加入到~/.bashrc中即可在登入後自動開啟history時間戳了。添加完成後,執行source .bashrc 讓其生效。僅針對目前賬号有效。
3、其實HISTTIMEFORMAT的格式就是 strftime函數的格式,比如上面的"%F %T “,%F表示顯示出Y-M-D格式的日期,%T表示顯示出H-M-S這樣格式的時間。
4、用Ctrl+R搜尋曆史指令;當你執行了一串相當長的指令之後,你隻要用關鍵字搜尋一下曆史指令然後重新執行這條指令而不需要将整條指令再輸一遍。方法是:按下Ctrl+R然後輸入關鍵字。如搜尋”date”,則顯示曆史的指令中含有”date”的指令 date “+今天是:%F,%A,時間是:%T.準備吃飯去”。按回車,就可以重新執行這條指令了,而按左箭頭鍵或右箭頭鍵則可以直接修改,改完之後按回車執行,非常友善!
【注:在指令行提示符下按下Ctrl+R,終端将顯示如下提示reverse-i-search】
#配置HISTTIMEFORMAT環境變量,給history記錄添加上時間戳
[ljs@vm ~]$
[ljs@vm ~]$ export HISTTIMEFORMAT=”%F %T " #配置HISTTIMEFORMAT環境變量,給history記錄添加上時間戳
原文:Linux 的 history 指令使用大全
12.Alt+Tab鍵
将會出現顯示所有之前的曆史指令指令
13.如何顯示出指令的英文全稱
man 指令
NAME 指令的名稱和簡短描述(顯示了該指令的英文全稱)
14.清屏
當指令輸入特别多或螢幕顯示特别亂時, 通過快捷鍵Ctrl+l或輸入指令clear清屏.
15.檢視Linux系統版本的指令
$ lsb_release -a
16.查找
find 用來查找檔案
- 格式 : find 目标目錄 -name ‘檔案名字*’
- 例如 :
在etc目錄下查詢名字帶"ens3"的檔案find /etc -name '*ens3*'
grep 用來查找内容
- 格式 : grep 要查詢的内容 檔案名
- 例如 : grep -in dhcp ifcfg-ens33 在ifcfg-ens33檔案中找 dhcp 不區分大小寫且顯示所在的行号
17.Linux防火牆
防火牆類似于一個安全衛士管家,它能對你通路它人電腦,它人通路你的電腦,進行攔截并處理,有的阻止,有的放行。
防火牆設定
* 開啟防火牆
systemctl start firewalld
* 重新開機防火牆
systemctl restart firewalld
* 關閉防火牆
systemctl stop firewalld
* 設定開機啟動
systemctl enable firewalld
* 停止并關閉開機啟動
systemctl disable firewalld
* 檢視防火牆狀态
systemctl status firewalld 或者 firewall-cmd --state
* 檢視防火牆開機時是否啟動
systemctl list-unit-files | grep firewalld
端口設定
* 添加
firewall-cmd --zone=public --add-port=80/tcp --permanent
* 更新防火牆規則
firewall-cmd --reload
* 檢視
firewall-cmd --zone=public --query-port=80/tcp
firewall-cmd --zone=public --list-ports
* 删除
firewall-cmd --zone=public --remove-port=80/tcp --permanent
* 常用端口
8080 tomcat
80 http協定
22 ssh遠端連接配接(預設開啟)
3306 mysql
6379 redis
18.檢視程序
* 文法
ps -au
ps -ef
* 參數解釋
-a 顯示所有使用者通過終端啟動的所有程序
-A 顯示所有程序
-u 顯示所有使用者通過終端啟動的所有程序詳細資訊
-x 顯示所有使用者通過終端和非終端啟動的所有程序詳細資訊
-e 此參數的效果和指定"A"參數相同,顯示所有程式
-f 顯示UID,PPID,C與STIME欄位
kill -s 9 PID