學點Linux命令沒壞處(常用的內建命令)
攜手創作,共同成長!這是我參與「掘金日新計劃 · 8 月更文挑戰」的第11天,點選檢視活動詳情
前言
linux作業系統提供了一些內建的命令,掌握這些有利於我們日常對linux的使用,以及shell指令碼的開發維護。下面簡單瞭解幾個常用的
內建命令
- help:用來檢視linux中其他命令的使用方式,這個在我們日常使用中最為頻繁,當忘記命名的具體引數時可以是使用help + 命令
[[email protected] ~]# help eval eval: eval [arg ...] Execute arguments as a shell command.
- alias:用來設定命令的別名,這個能方便我們日常開發,例如我們可以設定簡稱來處理一些較長的命令
- unalias: 用來接觸alias設定的別名 ``` alias gpull="git pull"
- bg/fg/jobs:linux中的任務管理也是高頻操作,分別用來檢視當前的任務,後臺任務狀態更新,前後臺任務轉換,
- bg:當我們前臺執行一些服務時候,案件ctrl+z可以轉入後臺,但是我們檢視任務狀態是停止,這是可以使用bg來執行
- fg:jobs檢視到的bg狀態可以使用fg使後臺任務轉到前臺
- jobs:用來檢視**當前終端**(這個很關鍵)放入後臺的工作。
[[email protected] ~]# nc -l 12345
^C
[[email protected] ~]# jobs
[[email protected] ~]# nc -l 12345
^Z
[1]+ Stopped nc -l 12345
[[email protected] ~]# jobs
[1]+ Stopped nc -l 12345
[[email protected] ~]# bg
[1]+ nc -l 12345 &
[[email protected] ~]# jobs
[1]+ Running
[[email protected] ~]# fg
nc -l 12345
^C
[[email protected] ~]#
```
- break/continue:在shell語法中我們會用到for迴圈
- eval:官方說明可讀取一連串的引數,而後再依引數自己的特性來執行。個人理解可以把字串引數轉換成命令執行,shell指令碼中常用來執行一些動態命令
[[email protected] ~]# eval "ls;ll" anaconda-ks.cfg init.sh mysql57-community-release-el7.rpm name.json nohup.out nps.log total 44 -rw-------. 1 root root 1257 Apr 10 21:34 anaconda-ks.cfg -****
- export:export命令用於檢視或設定全域性變數。export + -p可以檢視所有的全域性變數,在我們一些後臺語言中經常用來區分所部署的不同環境 ``` declare -x XDG_SESSION_ID="1745" [[email protected] ~]# export -p declare -x HISTCONTROL="ignoredups"
``` - exit:作為最常用的命令之一,用來退出Shell命令列。也可以使用ctrl + D來實現
- history:個人認為這個命令有兩個方便之處:
- 當機器共用時候你可以檢視他人的操作記錄,可以根據操作記錄來判斷伺服器的故障原因
- 操作一些複雜的命令後想要還原之前的操作
- history + nubmer檢視前number條輸入的命令
- history -d + number可以刪除指定編號的歷史命令
- history -c 可以清楚所有的歷史記錄
[[email protected] ~]# history 10 1012 help***
- type: type命令用於判斷指定命令的型別。Linux中命令總共有三種,builtin(內建命令)file(普通命令) alias(別名)
[[email protected] ~]# type read read is a shell builtin
- unset:清空變數,可以用來清楚export設定的變數
[[email protected] ~]# export NAME_RS=zk [[email protected] ~]# export -p | grep NAME_RS declare -x NAME_RS="zk" [[email protected] ~]# unset NAME_RS [[email protected] ~]# export -p | grep NAME_RS
總結
瞭解linux的基礎命令能給我日常工作帶來很多的便捷,提升工作效率,能有更多的時間摸魚,好好的學習一下準沒錯。這是Linux命令系列的最後一章,後續分享下實踐應用。 - 參考文件:跟老男孩學Linux運維