Linux——基礎命令用法(上)


一、Linux基礎命令

1、Linux命令行的格式

命令行的格式為:用戶名+主機名+當前工作目錄

輸入內容的命令格式為:命令 [-短選項/--長選項] [參數]

[root@localhost  ~]# 命令 [-短選項/--長選項] [參數]

其中命令就是“做什么”,選項就是“怎么做”,參數就是“對誰做”

例如:更改主機名
語法為:hostnamectl set-hostname $主機名

[root@localhost ~]# hostnamectl set-hostname wangzhigang
[root@localhost ~]# bash    #環境變量重載
[root@wangzhigang ~]# 

2、常用基礎命令

1、pwd命令——作用:顯示當前所在位置的完整路徑

[root@localhost yum.repos.d]# pwd
/etc/yum.repos.d

2、cd命令——作用:進入某個文件夾(某條路徑)

藍色字符代表文件夾
橄欖綠色的字符代表鏈接文件
黑色字符代表文本文件
.代表當前路徑
..代表上一層路徑
~代表當前用戶的家目錄,cd后面可省略

[root@localhost etc]# cd~
[root@localhost ~]# cd /
[root@localhost /]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]#

3、ls命令——作用:顯示當前文件夾的所有內容

-l -> 以長文件的形式顯示(ls -l 可縮寫成 ll 命令)
-a -> 顯示隱藏的文件(以.開頭的文件)
-la -> 以長文件的形式顯示隱藏的文件(ls -al 可縮寫成 ll -a)
-r -> 遞歸顯示文件內容

[root@localhost /]# ls
bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
boot  etc  lib   media  opt  root  sbin  sys  usr
[root@localhost /]# ls -a
.   bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
..  boot  etc  lib   media  opt  root  sbin  sys  usr

4、man命令——作用:查看某個命令的使用幫助文檔

[root@localhost ~]# man  ls 或 ls  --help

5、su命令——作用:切換用戶

[root@localhost ~]#		#代表管理員root,有且僅有1個
[root@localhost ~]# su – luna	不需要輸入普通用戶密碼
[luna@localhost ~]$		$代表普通用戶,可以有多個
[luna@localhost ~]$ su – root	要輸入root用戶密碼

6、passwd命令——作用:設置或更改用戶的密碼

注意:只有root用戶才能使用該命令更改密碼

[root@localhost ~]# passwd luna

7、date命令——作用:顯示或者設置當前的系統日期和時間

date 單獨使用 -> 詳細日期和時間
date +%T -> 顯示時間
date +%D -> 顯示日期
date +%X%x -> 顯示日期和時間

[root@localhost /]# date +%d%m%Y
04032021
[root@localhost /]# date +%d%m%y
040321

8、file命令——作用:查看文件類型

注意:linux中后綴名是可以自定義的,所以不要以文件的后綴名來判斷文件類型

[root@localhost /]# file /etc/passwd
/etc/passwd: ASCII text

10、head命令(tail命令)——作用:顯示文件的前(后)幾行,默認顯示10行,可帶參數-n指定顯示行數

[root@localhost /]# head /etc/passwd
...
[root@localhost /]# head -n 2 /etc/passwd
...
[root@localhost /]# tail -n 10 /etc/passwd | head -n  6	#查看/etc/passwd 文件倒數第10 行至第5行
...

11、cat(tac)命令——作用:將整個文檔內容從頭至尾(從尾到頭)顯示出來

[root@localhost /]# cat /etc/crontab
...
[root@localhost /]# tac /etc/crontab
...

12、wc命令——作用:統計文件中的行數、字數和字符數,分別對應-l、-w、-c

[root@localhost /]# wc /etc/shadow
42  42 1226 /etc/shadow
[root@localhost /]# wc -l /etc/shadow
42 /etc/shadow
[root@localhost /]# wc -lwc /etc/shadow
42  42 1226 /etc/shadow

13、history命令——作用:顯示之前使用過的命令列表

[root@localhost ~]# history

[root@localhost ~]# !number    #執行歷史命令列表中第number號命令

[root@localhost ~]# !string    #執行歷史命令列表中最近一次與string匹配的命令

[root@localhost ~]# history -c  #刪除歷史命令列表中的所有命令

可通過上下鍵查找之前使用過的命令

15、init命令——作用:切換系統狀態

[root@localhost ~]# init1  #切換到命令模式,相當於ctrl + alt + F2

[root@localhost ~]# init5  #切換到桌面圖形化模式,相當於ctrl + alt + F1

[root@localhost ~]# init0  #關機,相當於ctrl + alt + Del

二、Linux的文件系統

Linux系統一切皆文件!以“/”開頭的路徑都是絕對路徑,不以“/”開頭的路徑都是相對路徑

1、“/”下面的重要目錄

  • /usr -> 存放普通用戶命令(/usr/bin)、供root用戶使用的系統管理命令,(/usr/sbin)、及安裝的軟件等數據。
  • /etc -> 存放系統服務的配置文件。
  • /dev -> 存放設備文件,例如硬盤、cpu、網卡等數據。
  • /home -> 普通用戶的家目錄(或主目錄),存放普通用戶的配置文件。
  • /root -> root用戶的家目錄(或主目錄),存放root用戶的配置文件。
  • /boot -> 存放系統啟動過程所需的文件,系統內核等。
  • /var -> 存放動態變化的文件,例如日志文件、緩存文件、數據庫等。
  • /tmp -> 存放臨時文件,10天內未訪問更改的文件將自動刪除。
  • /run -> 存放上一次系統啟動過的進程文件。

其中有4個鏈接文件:

  • /bin -> /usr/bin -> 存放普通用戶使用的命令。
  • /sbin -> /usr/sbin -> 存放root用戶使用的命令。
  • /lib -> /usr/lib -> 庫文件
  • /lib64 -> /usr/lib64

2、文件相關的命令

1、touch命令——作用:創建一個空文本文件

[root@localhost ~]# touch /opt/abc
[root@localhost ~]# touch abc

2、dd命令——作用:創建一個大容量空文件

dd if=/dev/zero of=/test.file bs=1M count=100

3、mkdir命令——作用:創建文件夾
mkdir -p 創建多級目錄

[root@localhost ~]# mkdir /aaa
[root@localhost ~]# mkdir -p /aaa/bbb/ccc

4、cp命令——作用:復制文件
cp -r 復制文件夾(-r遞歸復制,也就是將當前文件夾里面所有子目錄也復制過去)

注意:當復制的舊文件與新文件重名時,舊文件將覆蓋新文件。

[root@localhost opt]# cp -r /aaa/ /opt/

5、mv命令——作用:移動文件,重命名文件

[root@localhost ~]# mv /aaa /mnt
[root@localhost ~]# cd /mnt
[root@localhost mnt]# ls
aaa
[root@localhost mnt]# mv aaa bbb
[root@localhost mnt]# ls
bbb

6、rm命令——作用:刪除文件
rm -r 刪除文件夾
rm -f 強制刪除,不提示刪除確認

[root@localhost /]# rm -f abc
[root@localhost /]#
[root@localhost /]# rm -rf /aaa
[root@localhost /]#

7、echo命令——作用:將命令后面的參數顯示出來
$符號后面跟系統變量,這個變量可以是大寫也可以是小寫。

[root@localhost /]# echo $HOSTNAME
localhost.localdomain
[root@localhost /]# echo date
date
[root@chenglu213 /]# echo `date`
p 8 11:36:21 CST 2020

echo還可以修改文本內容,語法是:echo “XXX” > 、 >> filename

3、通配符的使用

*號簡單模式匹配 -> 由0個或更多字符組成的字符串
?號簡單模式匹配 -> 任何1個字符
{ }大括號 -> 批量執行命令,可以連續使用或者嵌套使用

[root@localhost /]# echo file{a{1,2},b,c}.log
filea1.log  filea2.log  fileb.log  filec.log
[root@localhost /]# echo file{a,b,c}{1..3}.log
filea1.log filea2.log filea3.log fileb1.log fileb2.log fileb3.log filec1.log filec2.log filec3.log

``反引號命令替換

[root@localhost /]# echo today is `date +%X%x`
today is 12:59:11 PM11/13/2021

\反斜杠轉意字符

[root@localhost /]# echo the hostname is \&HOSTNAME
the hostname is &HOSTNAME

由單引號括起來的字符都作為普通字符出現
由雙引號括起來的字符,除$、反引號(`)和反斜線(\)仍保留其特殊功能外,其余字符均作為普通字符對待。

4、重定向操作符

一個>是重定向符,作用:覆蓋寫入,文件里的原有數據不保留

兩個>>是追加重定向符,作用:追加寫入,不覆蓋已有內容,直接寫在文件末尾,原數據保留

[root@localhost /]# touch err.txt
[root@localhost /]# systemctl restart unbound
Failed to restart unbound.service: Unit not found.
[root@localhost /]# systemctl restart unbound 2>err.txt
[root@localhost /]# cat err.txt
Failed to restart unbound.service: Unit not found.

在linux中,一個運行的程序(或稱為進程)需要通過shell從鍵盤讀取輸入並將輸出寫入到終端或者文件。
進程使用一個名為文件描述符的編號通道來獲取輸入並發送輸出。所有進程在開始時至少需要具有三個文件描述符:標准輸入(通道0)、標准輸出(通道1)、標准錯誤(通道2)。

5、管道符"|"的使用

作用:將前面的執行結果丟到管道符后面的命令去執行。

注意:管道符前面有重定向符號時,管道符后面要加上一個tee命令

[root@chenglu etc]# ls | grep ssh
ssh
[root@localhost /]# ls -l > 1.txt |tee less

三、vim文本編輯器

Vim有四種模式,分別是:插入模式、命令模式、末行模式和可視化模式。

1、插入模式

先按i/a/O/o -> 進入編輯狀態(插入模式)

i -> 在當前光標處進行編輯
a -> 在當前光標下一格進行編輯
O -> 在當前光標上一行插入一個空行進行編輯
o -> 在當前光標下一行插入一個空行進行編輯

2、命令模式

先按Esc -> 退出編輯狀態(插入模式)

yy -> 復制一行
nyy -> 復制n行
p -> 粘貼
dd -> 刪除一行
ndd -> 刪除n行
u -> 撤銷上一次操作
U -> 撤銷之前所有的操作
G -> 光標跳到末行
gg -> 光標跳到首行

3、末行模式

先按Esc -> 退出編輯狀態(插入模式)

:(w/q/wq/wq!=x) -> 退出vim(w保存,q退出)
:set nu ->  顯示行號
:set nonu  -> 不顯示行號
/word  ->  從上而下查找某個單詞內容
?word ->  從下而上查找某個單詞word
N -> 從尾至頭進行查找
n  -> 從頭至尾進行查找
:%s/XXX/YYY/g  -> 將文檔中所有的XXX替換為YYY

4、可視模式

先按Esc -> 退出編輯狀態(插入模式)

V(大寫的) -> 用光標選擇  -> Y

vim批量注釋:
1、按v進入virtual模式
2、上下鍵選擇需要注釋內容
3、按Ctrl+v,進入列模式
4、按大寫“I”鍵,進入插入模式
5、然后輸入注釋符“#”
6、最后按兩下“Esc”鍵完成

四、常用快捷鍵

  • Ctrl + a -> 光標跳到命令行的開頭

  • Ctrl + e -> 光標跳到命令行的結尾

  • Ctrl + u -> 將光標處到命令行開頭的所有內容清除

  • Ctrl + k -> 將光標處到命令行結尾的所有內容清除

  • Ctrl + ← -> 將光標跳到命令行前一字的開頭(在桌面圖形化狀態下)

  • Ctrl + → -> 將光標跳到命令行下一字的末尾

  • Alt + backspace -> 刪除光標所在的單詞

  • Ctrl + g -> 光標進入

  • Ctrl + Alt -> 光標退出

  • Ctrl + L -> 清屏 = clear命令

  • Tab鍵補全——補全命令、選項和參數

    按一次Tab鍵:補全唯一匹配的命令或者選項或者參數
    按兩次Tab鍵:將所有匹配的命令或者選項或者參數全部羅列出來

聲明:未經許可,不得轉載


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM