liunx常用命令,快捷鍵

2020-08-07     藝麟盛世

原標題:liunx常用命令,快捷鍵

一、常用命令介紹

在linux系統中存在很多命令,這些命令可以幫助我們完成不同的工作,在這裡面我們先介紹一些常用的基礎命令,這些命令可以幫助我們完成對應的基本操作,隨著以後的學習,我們還會接觸到更多可以幫助我們完成不同工作的linux命令,我們來一起看一下這些基礎命令都有哪些

1. 開關機命令

sync: 將緩衝區的數據同步到磁碟中(關機,重啟前都需要執行,避免數據丟失),在Linux系統中,當數據需要存入磁碟時,通常會先放到緩衝區內,等到適當的時刻再寫入磁碟,如此可提高系統的執行效率

shutdown 以一種安全的方式關閉系統。所有登陸用戶都可以看到關機信息提示,並且禁止登陸

-k 並非真正關機,只向所有人顯示警告信息。

如:shutdown -k +5

-r 重啟。默認延遲一分鐘

如:shutdown -r +3 "shutdown in 3 minutes"

-h 關機。默認延遲一分鐘

如:shutdown -h 12:00/shutdown -h now

-f 重啟時跳過磁碟檢測。

-F 重啟時強制磁碟檢測。

-c 取消shutdown

2 .系統信息

uname

-s 輸出內核名稱

-n 輸出網絡節點上的主機名

-r 輸出內核發行號

-v 輸出內核版本

-m 輸出主機的硬體架構名稱

-p 輸出處理器類型或"unknown"

-i 輸出硬體平台或"unknown"

-o 輸出作業系統名稱

-a 以如下次序輸出所有信息。其中若-p和-i的結果不可知則省略

hostname 查看主機名

hostnamectl set-hostname hello

date 查看和設置時間

時間方面:

%n : 下一行

%t : 跳格 tab

%H : 小時(00..23)

%I : 小時(01..12)

%k : 小時(0..23)

%l : 小時(1..12)

%M : 分鐘(00..59)

%p : 顯示本地 AM 或 PM

%r : 直接顯示時間 (12 小時制,格式為 hh:mm:ss [AP]M)

%s : 從 1970 年 1 月 1 日 00:00:00 UTC 到目前為止的秒數

%S : 秒(00..60)

%T : 直接顯示時間 (24 小時制)

%X : 相當於 %H:%M:%S

%Z : 顯示時區

日期方面:

%a : 星期幾 (Sun..Sat)

%A : 星期幾 (Sunday..Saturday)

%b : 月份 (Jan..Dec)

%B : 月份 (January..December)

%c : 直接顯示日期與時間

%d : 日 (01..31)

%D : 直接顯示日期 (mm/dd/yy)

%h : 同 %b

%j : 一年中的第幾天 (001..366)

%m : 月份 (01..12)

%U : 一年中的第幾周 (00..53) (以 Sunday 為一周的第一天的情形)

%w : 一周中的第幾天 (0..6)

%W : 一年中的第幾周 (00..53) (以 Monday 為一周的第一天的情形)

%x : 直接顯示日期 (yyyy-mm-dd)

%y : 年份的最後兩位數字 (00.99)

%Y : 完整年份 (0000..9999)

[root@manage01 ~]# date '+%I%M%S'

025929

[root@manage01 ~]# date '+%r'

上午 02時59分49秒

[root@manage01 ~]# date '+%s'

1584428402

[root@manage01 ~]# date '+%Z'

EDT

[root@manage01 ~]# date '+%a'

[root@manage01 ~]# date '+%A'

星期二

[root@manage01 ~]# date '+%b'

3月

[root@manage01 ~]# date '+%B'

三月

[root@manage01 ~]# date '+%c'

2020年03月17日 星期二 03時01分36秒

[root@manage01 ~]# date '+%T%n%D'

03:03:35

03/17/20

[root@manage01 ~]# date '+%T%t%D'

03:03:58 03/17/20

[root@manage01 ~]# date -s 2021-10-25

2021年 10月 25日 星期一 00:00:00 EDT

[root@manage01 ~]# date -s 18:00

2021年 10月 25日 星期一 18:00:00 EDT

[root@manage01 ~]# date -s 18:30:21

2021年 10月 25日 星期一 18:30:21 EDT

[root@manage01 ~]# date -s "2021-04-28 15:30:20"

2021年 04月 28日 星期三 15:30:20 EDT

3 .文件和目錄

cd /etc: 進入到/etc這個目錄

pwd: 查看當前的工作路徑

-P 顯示實際位置

-L 顯示所在位置

[root@manage01 ~]# cd /

[root@manage01 /]# ls

bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var

[root@manage01 /]# cd bin/

[root@manage01 bin]# pwd

/bin

[root@manage01 bin]# pwd -P

/usr/bin

[root@manage01 bin]# pwd -L

/bin

ls: 查看當前目錄下有哪些文件

-a 列出目錄下的所有文件,包括以 . 開頭的隱含文件。

-A 顯示除 「.」和「..」外的所有文件。

-B 不輸出以 「~」結尾的備份文件。

-c 與lt一起使用,顯示並按照修改時間(ctime)排序,與l一起使用,顯示修改時間,按名稱排序。

-d 將目錄象文件一樣顯示,而不是顯示其下的文件。

-f 對輸出的文件不排序,使用此選項後aU選項生效,lst選項失效

-F 在每個文件名後附上一個字符以說明該文件的類型,「*」表示可執行的普通文件;「/」表示目錄;「@」表示符號連結;「|」表示FIFOs;「=」表示套接字(sockets)。

-g 類似l但是不顯示所有者

-h 與l一起,以易於閱讀的格式輸出文件大小(例如 1K 234M 2G)

-i 輸出文件的i節點的索引信息。

-k 以k位元組的形式表示文件的大小。--si類似k但是以1000為進位而非1024

-l 列出文件的詳細信息。

-L 遇到連結文件是,顯示原文件的信息,而非連結信息

-m 橫向輸出文件名,並以「,」作分格符。

-n 類似l,但是用數字的 UID,GID 代替名稱。

-o 顯示文件的除組信息外的詳細信息。

-p 目錄後面加上/標識

-q 用?代替不可輸出的字符。

-r 對目錄反向排序。

-s 在每個文件名後輸出該文件的大小。

-t 以修改時間排序。

-u 與lt一起使用,以訪問時間(atime)排序;與l一起使用顯示訪問時間,按照名稱排序

-x 按列輸出,橫向排序。

-Q 把輸出的文件名用雙引號括起來。

-R 列出所有子目錄下的文件。

-S 以文件大小排序。

-X 以文件的擴展名(最後一個 . 後的字符)排序。

-1 一行只輸出一個文件。

--color=no 不顯示彩色文件名

--help 在標準輸出上顯示幫助信息。

--version 在標準輸出上輸出版本信息並退出。

mkdir 建立目錄

-m 設置權限模式(類似chmod)

-p 需要時創建目標目錄的上層目錄,但即使這些目錄已存在也不當作錯誤處理

-v 每次創建新目錄都顯示信息

-Z 將每個創建的目錄的SELinux 安全環境設置為CTX

touch 建立文件

-a 只更改訪問時間

-c 不創建任何文件

-m 只更改修改時間

-r 使用指定文件的時間屬性替代當前時間

-t 使用[[CC]YY]MMDDhhmm[.ss] 格式的時間替代當前時間

[root@manage01 ~]# stat hello

文件:hello

大小:0 塊:0 IO 塊:4096 普通空文件

設備:fd00h/64768d Inode:34502264 硬連結:1

權限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)

最近訪問:2020-03-17 16:51:35.502961371 -0400

最近更改:2020-03-17 16:51:35.502961371 -0400

最近改動:2020-03-17 16:51:35.502961371 -0400

創建時間:-

[root@manage01 ~]# touch -a -t 202002010101.30 hello

[root@manage01 ~]# stat hello

文件:hello

大小:0 塊:0 IO 塊:4096 普通空文件

設備:fd00h/64768d Inode:34502264 硬連結:1

權限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)

最近訪問:2020-02-01 01:01:30.000000000 -0500

最近更改:2020-03-17 16:51:35.502961371 -0400

最近改動:2020-03-17 16:51:53.143475189 -0400

創建時間:-

[root@manage01 ~]# touch -m -t 202002050101.30 hello

[root@manage01 ~]# stat hello

文件:hello

大小:0 塊:0 IO 塊:4096 普通空文件

設備:fd00h/64768d Inode:34502264 硬連結:1

權限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)

最近訪問:2020-02-01 01:01:30.000000000 -0500

最近更改:2020-02-05 01:01:30.000000000 -0500

最近改動:2020-03-17 16:52:07.837453512 -0400

創建時間:-

#將hello-linux.txt的屬性改成與anaconda-ks.cfg一樣

[root@manage01 ~]# stat hello-linux.txt

文件:hello-linux.txt

大小:12 塊:8 IO 塊:4096 普通文件

設備:fd00h/64768d Inode:34513350 硬連結:1

權限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)

最近訪問:2020-03-17 22:50:51.319377144 -0400

最近更改:2020-03-17 22:50:45.909483733 -0400

最近改動:2020-03-17 22:50:45.912483674 -0400

創建時間:-

[root@manage01 ~]# stat anaconda-ks.cfg

文件:anaconda-ks.cfg

大小:1378 塊:8 IO 塊:4096 普通文件

設備:fd00h/64768d Inode:34973658 硬連結:1

權限:(0600/-rw-------) Uid:( 0/ root) Gid:( 0/ root)

最近訪問:2020-03-16 23:08:34.121427663 -0400

最近更改:2020-02-04 15:01:33.273959663 -0500

最近改動:2020-03-18 16:33:48.873881970 -0400

創建時間:-

[root@manage01 ~]# touch -r anaconda-ks.cfg hello-linux.txt

[root@manage01 ~]# stat hello-linux.txt

文件:hello-linux.txt

大小:12 塊:8 IO 塊:4096 普通文件

設備:fd00h/64768d Inode:34513350 硬連結:1

權限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)

最近訪問:2020-03-16 23:08:34.121427663 -0400

最近更改:2020-02-04 15:01:33.273959663 -0500

最近改動:2020-03-18 18:22:48.694597233 -0400

創建時間:-

rm 刪除文件或目錄

-f 強制刪除。忽略不存在的文件,不提示確認

-i 在刪除前需要確認

-I 超過三個文件或者遞歸刪除前要求確認。比-i提示內容更少

-d 刪除空目錄

-r 遞歸刪除目錄及其內容

這些命令都是初學者可能會經常用到的,大家可以在自己的虛擬機上練習一下

cp 拷貝

-i 覆蓋前詢問(使前面的 -n 選項失效)

-n 不要覆蓋已存在的文件(使前面的 -i 選項失效)

-R, -r, --recursive 遞歸複製目錄及其子目錄內的所有內容

-s 只創建符號連結而不複製文件

-f 強制,將目標文件無法打開則將其移除並重試

mv 移動/改名

-f 覆蓋前不詢問

-i 覆蓋前詢問

-n 不覆蓋已存在文件

#如果您指定了-i、-f、-n 中的多個,僅最後一個生效。

cat 查看文件內容

-A 等價於-vET

-b 對非空輸出行編號

-e 等價於-vE

-E 在每行結束處顯示$

-n 對輸出的所有行編號

-s 不輸出多行空行

-t 與-vT等價

-T 將跳格字符(tab)顯示為 ^I

-v 使用^和M

二、常用符號

* 任意字符串

? 任意字符

/ 路徑間隔符

~ 當前用戶的家目錄 管理員家目錄為/root,其它用戶的家目錄在/home/用戶名

文章來源: https://twgreatdaily.com/zh-cn/Sue9yHMBeElxlkkarB_T.html