linux運維之道基礎命令,Linux運維之道(7)——Linux管理類命令

@(Linux)[系統管理]

1. 目錄管理類命令

1.1 cd命令

格式:cd [-L|[-P [-e]] [-@]] [dir]

被你忽略的小知識:

在這里科普一個小小的知識點,就是關于cd -為什么可以自由的在當前目錄和之前目錄相互切換?

其實,在我們的 Shell 的環境變量當中保存了兩個相關的環境變量,即為PWD和OLDPWD。顧名思義,我們很容易會想到當我們執行命令時,實際上就是在這個兩個環境變量之間切換。我們可以使用echo $PWD、echo $OLDPWD或者env命令來查看環境變量信息。

實例演示:

[root@localhost ~]# cd /home/ #切換到home目錄

[root@localhost home]# cd - #返回切換到home前的目錄

/root

[root@localhost ~]# cd ../ #切換到上一級目錄

[root@localhost /]# cd ~ #切換當前用戶的home目錄

1.2 pwd命令

pwd - print name of current/working directory

格式:pwd [OPTION]...

實例演示:

[root@rudder home]# pwd #顯示當前目錄

/home

[root@web mail]# pwd -P #目錄是軟連接,顯示實際物理地址

/var/spool/mail

[root@web mail]# pwd -L #-L顯示,邏輯地址

/var/mail

1.3 mkdir命令

mkdir - make directories

格式:mkdir [OPTION]... DIRECTORY...

參數選項:

-m, --mode=模式

設置權限模式(類似chmod),而不是rwxrwxrwx 減umask

-p, --parents

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

-v, --verbose

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

實例演示:

[root@localhost ~]# mkdir aaa #創建目錄

[root@localhost ~]# mkdir -m a=rw bbb #創建指定屬性的目錄

[root@localhost ~]# mkdir -p 111/abc #創建目錄,父目錄存在,建之

練習測試:

(1) 如何創建/tmp/x/y1, /tmp/x/y2, /tmp/x/y1/a, /tmp/x/y1/b, /tmp/x/y2/a, /tmp/x/y2/b

mkdir /tmp/x/{y1,y2}/{a,b}

(2) 如何創建x_m, y_m, x_n, y_n

mkdir {x,y}_{m,n}

(3) 如何創建/tmp/bin, /tmp/sbin, /tmp/usr, /tmp/usr/bin, /tmp/usr/sbin

mkdir -p /tmp/{bin,sbin,usr/{bin,sbin}}

1.4 rmdir命令

rmdir - remove empty directories

格式:rmdir [OPTION]... DIRECTORY...

參數選項:

--ignore-fail-on-non-empty

忽略僅由目錄非空產生的所有錯誤

-p, --parents

刪除指定目錄及其上級文件夾,例如"rmdir -p a/b/c"與"rmdir a/b/c a/b a" 基本相同

-v, --verbose

輸出處理的目錄詳情

--help

顯示此幫助信息并退出

--version

顯示版本信息并退出

實例演示:

[root@localhost ~]# rmdir test #刪除test目錄,注意必須是空目錄

[root@localhost ~]# rmdir -p a/b/c #刪除指定目錄及其上級文件夾

1.5 tree命令

tree - list contents of directories in a tree-like format

格式:tree [OPTION] [PATH]

參數選項:

-a

顯示所有文件和目錄,全部深度

-A

使用ASNI繪圖字符顯示樹狀圖而非以ASCII字符組合

-C

在文件和目錄清單加上色彩,便于區分各種類型

-d

顯示目錄名稱而非內容,常用選項

-D

列出文件或目錄的更改時間

-f

在每個文件或目錄之前,顯示完整的相對路徑名稱

-F

在執行文件,目錄,Socket,符號連接,管道名稱名稱,各自加上"*","/","=","@","|"號

-g

列出文件或目錄的所屬群組名稱,沒有對應的名稱時,則顯示群組識別碼

-i

不以階梯狀列出文件或目錄名稱

-I

不顯示符合范本樣式的文件或目錄名稱

-l

如遇到性質為符號連接的目錄,直接列出該連接所指向的原始目錄

-L level

指定顯示的層級數目,常用選項

-n

不在文件和目錄清單加上色彩

-N

直接列出文件和目錄名稱,包括控制字符

-p

列出權限標示

-P

只顯示符合范本樣式的文件或目錄名稱

-q

用"?"號取代控制字符,列出文件和目錄名稱

-s

列出文件或目錄大小

-t

用文件和目錄的更改時間排序

-u

列出文件或目錄的擁有者名稱,沒有對應的名稱時,則顯示用戶識別碼

-x

將范圍局限在現行的文件系統中,若指定目錄下的某些子目錄,其存放于另一個文件系統上,則將該子目予以排除在尋找范圍外

實例演示:

[root@localhost ~]# tree -L 2 #-L n 只顯示 n 層目錄 (n 為數字)

[root@localhost ~]# tree -t #-t 用文件和目錄的更改時間排序

[root@localhost ~]# tree -r #-r 以相反次序排列

[root@localhost ~]# tree -F #-F 在執行文件,目錄,Socket,符號連接,管道名稱名稱,各自加上"*","/","=","@","|"號

[root@localhost ~]# tree -f #在每個文件或目錄之前,顯示完整的相對路徑名稱

[root@localhost ~]# tree -d #只顯示目錄

[root@localhost ~]# tree -a #顯示所有文件和目錄

1.6 ls命令

ls - list directory contents

格式:

ls [OPTION]... [DIR]...

顯示指定路徑下的文件列表

參數選項:

-a, --all:

顯示所有文件,包括隱藏文件

-l

長格式顯示

-h, --human-readable

單位化顯示

-d

顯示目錄自身的相關屬性;通常要與-l一起使用

-r, --reverse

逆序顯示

-R, --recursive

遞歸

實例演示:

[root@localhost dev]# ls -d */

block/ bus/ cpu/ fd/ input/ net/ raw/ snd/

[root@localhost ~]# ll -Z -d /var/www/html/

drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 /var/www/html/

[root@localhost ~]# ls -l

總用量 8

drwxr-xr-x 2 root root 4096 4月 27 12:34 bak

drwxr-xr-x 4 tnak tnak 4096 4月 28 14:25 tank

2. 文本文件查看類命令

2.1 more命令

more - file perusal filter for crt viewing

格式:more [options] file...

參數選項:

-d

顯示翻頁及退出提示

實例演示:

[root@localhost ~]# more test.php #查看文件

[root@localhost ~]# netstat -tpnl |more #常用方式,分頁顯示

2.2 less命令

less - opposite of more

格式:less [OPTIONS...] FILE...

實例演示:

[root@localhost ~]# less test.php #查看文件

[root@localhost ~]# netstat -tpnl |less #常用方式,分頁顯示

2.3 head命令

head - output the first part of files

格式:head [OPTION]... [FILE]...

參數選項:

-c, --bytes=[-]K

指定獲取前#字節

-n, --lines=[-]K

指定獲取前#行

-q, --quiet, --silent

不顯示包含給定文件名的文件頭

實例演示:

[root@localhost ~]# head /etc/passwd #默認,顯示開頭前10行

[root@localhost ~]# head -k /etc/passwd #顯示開頭前k行

[root@localhost ~]# head -q -n k file1 file2 file3 #顯示多文件開頭前k行,并且不顯示文件名的文件頭

[root@localhost ~]# head -n -k /etc/passwd #除最后k行外,顯示剩余全部內容

2.4 tail命令

tail - output the last part of files

格式:tail [OPTION]... [FILE]...

參數選項:tail [OPTION]... [FILE]...

-c #

指定獲取后#字節

-n #

指定獲取后#行

-f

跟蹤顯示文件新追加的內容;

實例演示:

[root@localhost ~]# tail /etc/passwd #默認,顯示最后10 行。

[root@localhost ~]# tail -n 2 /etc/passwd #顯示最后2行

[root@localhost ~]# tail -q -n k file1 file2 file3 #顯示多文件最后k行,并且不顯示文件名的文件頭

[root@localhost ~]# tail -n +k /etc/passwd #從開頭第k字節處開始輸出。

[root@localhost ~]# tail -f /var/log/messages #參數-f使tail不停地去讀最新的內容,因此有實時監視的效果,用Ctrl+c來終止

[root@localhost ~]# tail -n+10 file.txt | head -1 #顯示file.txt的第10行

3. 文件的時間戳管理工具

3.1 touch命令

touch - change file timestamps

被你忽略的小知識:

三個時間戳:

access time:訪問時間,簡寫為atime,讀取文件內容

modify time: 修改時間, mtime,改變文件內容(數據)

change time: 改變時間, ctime,元數據發生改變

格式:touch [OPTION]... FILE...

參數選項:

-a

只更改訪問時間

-d, --date=字符串

使用指定字符串表示時間替代當前時間

-m

只更改修改時間

-r, --reference=文件

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

-t STAMP

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

--time=WORD

使用WORD 指定的時間:access、atime、use 都等于-a選項的效果,而modify、mtime 等于-m 選項的效果

--help

顯示此幫助信息并退出

--version

顯示版本信息并退出

請注意:-d 和-t 選項可接受不同的時間/日期格式

實例演示:

[root@localhost ~]# touch test.php #將test.php的檔案時間改為,當前時間,文件不存在建之

[root@localhost ~]# touch -c -t 05061803 test.php #將檔案時間改為,5月6日18點3分

[root@localhost ~]# touch -r abc.php test.php #將test.php檔案改成根abc.php一樣

4. 文件管理類命令

4.1 cp命令

cp - copy files and directories

格式:

cp [OPTION]... [-T] SOURCE DEST

cp [OPTION]... SOURCE... DIRECTORY

cp [OPTION]... -t DIRECTORY SOURCE...

參數選項:

-i

交互式

-r, -R

遞歸復制目錄及內部的所有內容;

-a

歸檔,相當于-dR --preserv=all

-d , --no-dereference --preserv=links , --preserv[=ATTR_LIST]

mode: 權限

ownership: 屬主屬組

timestamp

links

xattr

context

all

-p , --preserv=mode,ownership,timestamp

-v , --verbose

-f , --force

實例演示:

[root@localhost ~]# cp -p test.rb /home/test #將test.rb copy到test目錄,并且保留原文件的屬性

[root@localhost ~]# cp -r Dir/ /home/test #將Dir目錄copy到test目錄下

[root@localhost ~]# cp -fr Dir/* /home/test #將Dir下面的所有文件強制copy到test目錄下

[root@localhost ~]# cp test.rb{,.bak} #備份test.rb,并在尾部加上.bak后綴

4.2 mv命令

mv - move (rename) files

格式:

mv [OPTION]... [-T] SOURCE DEST

mv [OPTION]... SOURCE... DIRECTORY

mv [OPTION]... -t DIRECTORY SOURCE...

參數選項:

-i

交互式

-f

強制

實例演示:

[root@localhost ~]# mv abc abc.php #將abc移動成abc.php

[root@localhost ~]# mv test.php{,.sh} #將test.php增加后輟

[root@localhost ~]$ mv -t ./database 1.sql #將1.sql移動到database目錄下

[root@localhost ~]$ mv aaa bbb #將目錄或者文件重命名,如果存在bbb目錄,則是將aaa移到bbb目錄下

4.3 rm命令

rm - remove files or directories

格式:rm [OPTION]... FILE...

參數選項:

-i

交互式

-f

強制刪除

-r

遞歸

實例演示:

[root@localhost ~]# rm test.php #刪除文件需要確認

[root@localhost ~]# rm -f test.php #強制刪除文件不確認

[root@localhost ~]# rm -rfv ./test #強制刪除當前的test目錄,并顯示刪除的詳細過程

5. 系統管理類命令

5.1 shotdown命令

5.2 reboot命令

5.3 poweroff命令

5.4 halt命令

5.5 w命令

5.6 who命令

思維導圖

8d19860960a6

Linux中你不得不知道管理類命令

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/534156.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/534156.shtml
英文地址,請注明出處:http://en.pswp.cn/news/534156.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

html畫圖代碼_python之matplotlib畫圖教程(2)

各位小表貝,你們的畫圖小老弟又來咯~上一次我們聊到了如何畫離散圖,這一次我們來點復雜的,準備好了么,系好安全帶,準備發車咯~滴滴~我們先來點比較簡單,那種易于上手的。如果現在我知道了兩個點的坐標&…

在linux上面找一個腳本,30個Linux Shell腳本經典案例

在學習Linux運維時,普遍反饋是:Linux Shell是一個很難的知識板塊。雖然大家都認真學,基本的語法也都掌握了,但有需求時,很難直接上手編程,要么寫了很久,要么寫不好!也有很多做運維很…

python圖像識別代碼_用Python進行簡單圖像識別(驗證碼)

這是一個最簡單的圖像識別,將圖片加載后直接利用Python的一個識別引擎進行識別 將圖片中的數字通過 pytesseract.image_to_string(image)識別后將結果存入到本地的txt文件中 #-*-encoding:utf-8-*- import pytesseract from PIL import Image class GetImageDate(ob…

linux 端口添加地址,linux – 綁定,網絡(接口)和多播地址有什么區別?

實際上你在這里混淆了三種方法.第一個是bind,用于將套接字綁定到指定的地址和端口.使用此方法基本上您打開一個udp-port并等待該地址上的此端口的數據.第二個是join-method,用于讓套接字加入指定的多播組.組播組的示例是224.0.0.1 – “所有主機”組播組 – 其針對同一網段上的…

c++ map初始化_Go學習每日一問(18)-map元素查找

每次學習并整理一個Golang的知識點,每天進步一點點。今天學習下go中的一個知識點:map元素查找日省吾身1.下面代碼中 A B 兩處應該怎么修改才能順利編譯?func main() { var m map[string]int //A m["a"] 1 if v : m["b&q…

linux運維需要哪些網絡知識,Linux運維學習筆記-網絡技術知識體系總結

jTemplates部分語法介紹1.{#if} {#if |COND|}..{#elseif |COND|}..{#else}..{#/if} Examples: {#if 2*816} good {#else} fail {# ...解密jQuery內核 DOM操作方法(二)html,text,val回顧下幾組DOM插入有關的方法 innerHTML 設置或獲取位于對象起始和結束標簽…

-bash: wget: 未找到命令_18個堪稱神器的命令行工具,高效運維必備

上期入口:24個 CSS 高級技巧合集提示:因公眾號不支持超鏈接,上圖所有項目地址,可在公眾號后臺回復關鍵字 “命令行工具” 獲取。thefuck命令行打錯了以后,打一個fuck就會自動糾正。GitHub:https://github.c…

linux編輯java文本,linux下的文本編輯器VI的使用命令

1、 移動光標H        #移到屏幕的左上角M         #移到屏幕的中間行開頭L          #移到屏幕的最后一行[         #移到文件開始位置 (雙擊)]         #移到文件結束位置(雙擊):n         #移到文件的第n行Ctrl b     …

python3.8.0安裝_Python3.8.0

Python3.8.0是一款廣受程序員歡迎的編程語言,也是面向對象的一款設計語言,Python以其語言的靈活和簡易性,具有非常簡捷而清晰的語法特點,在腳本工具、數據分析、web后端等等領域都有著優良的表現,收到了大家的廣泛應用…

linux系統proc目錄,快速了解Linux系統下的proc目錄

/proc/devices文件這個文件列出字符和塊設備的主設備號,以及分配到這些設備號的設備名稱。常用的命令為#cat /proc/devices(在調試驅動的時候這個還是有用的,可以通過lsmod查看驅動模塊是否加載)/proc/interrupts這個文件的每一行都有一個保留的中斷。每…

cv2.error: opencv(4.4.0)_【從零學習OpenCV 4】輪廓面積與長度

本文首發于“小白學視覺”微信公眾號,歡迎關注公眾號 本文作者為小白,版權歸人民郵電出版社發行所有,禁止轉載,侵權必究! 經過幾個月的努力,小白終于完成了市面上第一本OpenCV 4入門書籍《OpenCV 4開發詳解…

linux 腳本批量刪除,Linux Shell使用Bash腳本批量刪除文件

PHP每天生成一個存有系統要刪除的臨時文件的.out文件列表,由bash腳本逐行通過讀取.out文件(每一行代表一個待刪除的文件)挨個刪除,代碼如下(dl.sh): #!/bin/bash # Shell script utility to delete file. # You can call script as follows, …

python自定義安裝哪些不需要_【1】python模塊:自定義模塊的3種導入方式

一、定義 模塊就是用一堆的代碼實現了一些功能的代碼的集合,通常一個或者多個函數寫在一個.py文件里,而如果有些功能實現起來很復雜,那么就需要創建n個.py文件,這n個.py文件的集合就是模塊。如果不懂可以先看下面這篇博文&#xf…

linux mysql數據庫日志關閉,linux 怎樣恢復mysql數據庫日志

1、用dump命令備份數據庫。# mysqldump -u root -p dbfile > dbfile.sql2、用rsync從新服務器獲得備份的文件(SCP或WGET也可以)。# rsync -avr rootmyolddbserver:/home/mydumpfolder/dbfile.sql3、登陸新服務器的mysql客戶端。# mysql -u root -p4. 建立數據庫。mysql> …

linux劃分root_vg,為Linux添加新硬盤,劃分LVM分區

1、為VM添加兩塊SCSI硬盤→→完成后重啟VM→→運行fdisk -l,可以看到系統自動將添加的硬盤識別為/dev/sdb和dev/sdc.2、分區對sdb和sdc進行分區,並調整分區類型為8e(LVM類型),sdb劃分為sdb1,sdb2,sdc劃分為sdc1,sdc2,sdc3[rootpromote ~]# fdisk /dev/sd…

python文件輸入符_python讀入文件時加r的作用?

r’xxx’ 的含義 **加 r 會把字符串轉變為非轉義的原始字符串。**比較常用。 例如:print(D:\\test\\test.txt)print(rD:\\test\\test.txt)print(rD:\test\test.txt)123 結果是:D:\test\test.txt D:\\test\\test.txt D:\test\test.txt123 從結果看來&…

linux kvm切換器,KVM切換器是什么,看懂這一篇就夠

原標題:KVM切換器是什么,看懂這一篇就夠在服務器機房的機架不便于存放多個顯示器和鍵盤的空間里,KVM切換器起著重要的作用。KVM切換器能從本地或遠程監視與控制多個計算機與服務器,由鍵盤、鼠標和顯示屏組成的KVM控制臺是最方便和…

alien指令 linux,使用alien命令讓deb包和rpm包互相轉換

OS version: CentOS7 / Debian9發現alien這個命令時很驚喜,之前在debian上安裝etcd找不到安裝包感覺很不科學,有了alien命令事情一下就變簡單了。這里以etcd為例,將etcd從rpm包轉換成deb包,然后傳送到debian機器上安裝。(這個命令…

linux 信號_Linux信號量(1)-SYSTEM V

?信號量概念信號量本質上是一個計數器(不設置全局變量是因為進程間是相互獨立的,而這不一定能看到,看到也不能保證引用計數為原子操作),用于多進程對共享數據對象的讀取,它和管道有所不同,它不以傳送數據為…