1. 程式人生 > >Linux基礎命令及使用幫助

Linux基礎命令及使用幫助

一、內部命令

內建命令(builtin):由shell程式自帶的命令

help:檢視內部命令
enable -n command 禁用某內部命令
enable -n  檢視全部被禁用的命令
enable command 啟用內部命令

二、外部命令

1.查詢命令種類及命令路徑

type command 檢視命令是內部還是外部命令
which command 檢視該命令檔案路徑
which --skip-alias command 檢視的命令檔案路徑但不包含別名命令
whereis   檢視命令檔案路徑

2.hash快取表

系統初始hash表為空,當外部命令執行時,預設會從PATH路徑下尋找該命令,找到後會將這條命令的路徑記錄到hash表中,當再次使用該命令時,shell直譯器首先會檢視hash表,存在將執行之,如果不存在,將會去PATH路徑下尋找。利用hash快取表可大大提高命令的呼叫速率.

echo $PATH 顯示全部的PATH路徑
hash  顯示hash快取
hash -d name 刪除快取中name路徑
hash -r 清除快取

3.alias(命令別名)

alias 顯示當前系統中所有可用的別名
alias name='value' 定義別名name,相相當於執行命令value。
alias aaa="cat /etc/shells"   
unalias aaa   取消aaa的別名
unalias -a 取消所有的別名
**用命令列定義的別名,僅對當前shell有效**

要想永久有效,需要定義在配置檔案中

  • 僅對當前使用者有效: ~/.bashrc
  • 對所有使用者有效:/etc/bashrc

==注意:如果別名與原命令重名,shell優先執行別名,要想執行原命令:
\command
'command'==

4.date,clock 顯示日期和時間

Linux有兩種時間:
- 系統時鐘:有Linux核心通過CPU的工作頻率進行的
- 硬體時間:主機板

clock -s,--hctosys   以硬體時間為準,校正系統時間
clock -w,--systohc  以系統時間為準,校正硬體時間
date +s% 顯示自1970年0時0分0秒至今的秒數
date +%a 顯示今天周幾
date +%F 顯示完整的日期
date +"%F %T"  或 date "+%F %T"   顯示完整的時間日期
date [MMDDhhmm[[CC]YY][.ss]]  設定系統時間,如
date 101015152018.10    即設定系統時間為2018年10月10日15時15分10秒

假如系統、硬體時間都是錯誤的,這種情況下用ntpdate命令連線一臺時間正確的伺服器校正時間

ntpdate ntp1.aliyun.com
ntpdate ip

顯示日曆

cal 2018 顯示2018年的日曆
cal 10 2019 顯示2019年10月日曆
cal -y 顯示今年的日曆

修改系統預設語言

語言位於/etc/loacle.conf 檔案中
利用nano命令修改該檔案
nano /etc/locale.conf
將LANG="en_US.UTF-8" 改為 LANG="zh-CN.UTF-8" 即可

5.poweroff、halt、reboot、shutdown關機命令

reboot重啟

reboot -f  強制重啟,不呼叫shutdown
reboot -p 切斷電源重啟

shutdown

shutdown [OPTIONS...] [TIME] [WALL...]
shutdown -h  halt
shutdown -P  poweroff
shutdown -r  reboot
shutdown -k  Do not halt, power-off, reboot, just write wall message.  惡搞小遊戲
shutdown 注意:centos7 後邊必須跟時間
shutdown hh:mm  計劃於hh:mm 關機
shutdown +m  m分鐘後自動關機

6.使用者登入資訊檢視命令

whoami  顯示當前登入有效使用者
who am i  系統當前登入的使用者及操作
who 系統當前所有的登入回話
w  系統當前所有的登入回話及所做的操作

7.ls命令(list directory contents)

ls [OPTION]... [FILE]...

ls -a 顯示所有的檔案包括.與..開頭的檔案
ls -l 顯示長格式列表,顯示檔案的所有屬性資訊
ls -d 僅顯示當前資料夾
ls -h 對檔案大小格式進行換算
ls -r 逆序排列
ls -R 遞迴顯示子目錄
ls -ld 顯示當前目錄的長格式屬性

長格式屬性說明(採自部落格園駿馬金龍部落格)

8. cd命令(change directory)

cd 直接切換至家目錄(bash中,~代表家目錄),同cd ~
cd / 切換至根目錄
cd -  上一目錄與當前目錄之間切換
cd .. 切換至上一級目錄
cd /var/log  切換至var下log路徑下
cd+檔名 或cd ./檔名  表示直接切換至該目錄下的此檔案

9.cat命令(concatenate files and print on the standard output,檢視文字檔案並顯示在標準輸出裝置上)

cat -n 在顯示的文字行前邊新增序號
cat /etc/fstab /etc/passwd   同事顯示fstab和passwd兩個檔案

10.pwd、basename、dirname

pwd  顯示當前所在目錄
basename   當前的檔名
dirname  當前檔案所在的路徑

11.history (管理命令歷史)

登陸shell時,會讀取命令歷史檔案中記錄下的命令

  • 記錄在 ~]# .bash_history

  • 檢視命令:cat .bash_history

登入進shell後新執行的命令只會記錄在快取中

  • logout後再登入,才會記錄於 .bash_history
history -a 追加本次新執行的命令至.bash_history檔案中
history -d 39  刪除history中第39行命令
history -c  刪除所有命令

相關快捷操作:
!# 表示呼叫history命令歷史中第#調命令
!string,比如!man 表示呼叫歷史中第一個以man開頭的命令
!! 執行上一條命令

三、使用幫助

1、概述:獲取多層次的幫助

whatis 顯示命令的簡短描述
command--help 獲取幫助
man and info
/usr/share/doc/ 使用幫助文件
Red Hat documentation
其它網站和搜尋

2、--help

顯示用法總結和引數列表
示例:

date --help
Usage: date [OPTION]... [+FORMAT]
   or: date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
其中:
[] 表示可選項,非必選
CAPS或<>表示變化的資料
...表示一個列表,可選擇多個
x |y| z的意思是“x或y或z”,多選一

3、man幫助

/usr/share/man

man文件
1: 使用者命令
2: 系統呼叫
3: C庫呼叫
4: 裝置檔案及特殊檔案
5: 配置檔案格式
6: 遊戲
7: 雜項
8: 管理類的命令
9:Linux 核心API

==注意:有的命令在不同檔案中都有幫助手冊,如read命令==
在這裡插入圖片描述
==也並非每個命令都有man幫助手冊==

檢視man手冊頁——
列出所有幫助——man –a keyword
搜尋man手冊——man -kkeyword列出所有匹配的頁面
使用whatis資料庫
相當於whatis
man –f keyword
列印man幫助檔案的路徑
man –w [章節] keyword

man [章節] keyword  檢視該命令在該章節的幫助
man –a keyword   列出所有幫助
man -k keyword   列出所有匹配的頁面
man –f keyword   相當於whatis

man命令的操作方法:使用less命令實現

  1. space, ^v, ^f, ^F: 向檔案尾翻屏
  2. b, ^b: 向檔案首部翻屏
  3. d, ^d: 向檔案尾部翻半屏
  4. u, ^u: 向檔案首部翻半屏
  5. RETURN, ^N, e, ^E or j or ^J: 向檔案尾部翻一行y or ^Y or ^P or k or ^K:向檔案首部翻一行
  6. q: 退出
  7. :跳轉至第#行

  8. 1G: 回到檔案首部
  9. G:翻至檔案尾部

/KEYWORD:以KEYWORD指定的字串為關鍵字,從當前位置向檔案尾部搜尋;不區分字元大小寫;

  • n: 下一個
  • N:上一個

?KEYWORD:以KEYWORD指定的字串為關鍵字,從當前位置向檔案首部搜尋;不區分字元大小寫;

  • n: 下一個
  • N:上一個