1、經常使用命令介紹
在linux系統中存在不少命令,這些命令能夠幫助咱們完成不一樣的工做,在這裏面咱們先介紹一些經常使用的基礎命令,這些命令能夠幫助咱們完成對應的基本操做,隨着之後的學習,咱們還會接觸到更多能夠幫助咱們完成不一樣工做的linux命令,咱們來一塊兒看一下這些基礎命令都有哪些node
shutdown 以一種安全的方式關閉系統。全部登錄用戶均可以看到關機信息提示,而且禁止登錄linux
-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 查看主機名socket
hostnamectl set-hostname helloide
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
2、經常使用符號
? 任意字符
/ 路徑間隔符
~ 當前用戶的家目錄 管理員家目錄爲/root,其它用戶的家目錄在/home/用戶名