學點Linux命令沒壞處(常用的內置命令)

語言: CN / TW / HK

攜手創作,共同成長!這是我參與「掘金日新計劃 · 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運維