馬哥教育網絡班N22期+第2周課程練習

馬哥教育網絡班N22期+第2周課程練習

1 linux上的常用文件管理類命令

1.1 常用文件查看命令

MORE命令

  • 作用:分屏顯示查看文件內容

  • 用法:more file

  • 查看翻頁方式:

    • B鍵向上 一頁

    • 空格向下一頁

    • enter鍵一行一行翻閱

    • 翻到最后一行自動退出

LESS命令

  • 作用:分屏顯示查看文件內容

  • 用法:less file

  • 查看方式:less命令與查看man文檔的方式相同

CAT命令

  • 用法:cat [OPTION]... [FILE]...

  • cat命令可接多個文件一起查看

  • 常用選項:

    • -n:顯示輸出文本信息的行號

    • -E:顯示行結束符$

TAC命令

  • 作用:顯示文本信息

  • 使用方法:與cat命令使用方法對應

  • 與cat的區別:tac命令將文本的每一行倒序顯示

HEAD命令

  • 作用:查看文本文件件前n行

  • 用法:head [OPTION]... [FILE]...

    • -n # | -# :指定查看文件的前#行

    • 常用選項:

  • 示例:

    • head -n 2 /etc/fstab #顯示fstab文件前2行

    • heas -2 /etc/fstab

TAIL命令

  • 作用:查看文件后n行,默認尾部10行

  • 用法 tail [OPTION]... [FILE]...

  • 常用選項:

    • -n # | -# :指定查看文件后#行

    • -f:查看文件尾部內容結束后不退出并監視,跟隨顯示新增的行;

  • 示例:

    • tail -n 3 /etc/fstab

    • tail -3 /etc/fstab

FILE命令

  • 作用:確定文件內容類型(determine file type)

  • 用法:file [FILE]...

  • 示例:

  • [root@Red Hat etc]# file /etc/inittab 
    /etc/inittab: ASCII English text		

1.2 文件的常用管理類命令

TOUCH命令

  • 作用:用來更改時間戳,也可以創建空文件

  • 用法:touch [OPTION]... FILE...

  • 常用選項:

    • touch -m -t 0212010303.03 /tmp/a 

    • 修改a文件的mtime時間為2012-12-01 03:03:03

    • STAMP格式:[[CC]YY]MMDDhhmm[.ss]

    • -c: 指定的文件路徑不存在時不予創建; 

    • -a: 僅修改access time; 

    • -m:僅修改modify time; 

    • -t STAMP

    • 示例:

CP命令

  • 功能:文件或目錄復制命令

  • 語法格式:

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

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

    • 如目標目錄不存在,顯示錯誤信息;

    • 如果目標目錄存在:

    • 如果DEST是非目錄文件,顯示錯誤信息; 

    • 如果DEST是目錄文件:分別復制每個文件至目標目錄中,并保持原名;

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

    • 如果目標(DEST)是非目錄文件:則覆蓋目標文件; 

    • 如果目標(DEST)是目錄文件:則先在DEST目錄下創建一個與源文件同名的文件,并復制其數據流;

    • 則事先創建此文件,并復制源文件的數據流至DEST中;

    • 如果目的(DEST)不存在:

    • 如果目標存在:

    • 單源復制:

    • 多源復制:

    • 注意:默認情況只復制文件,不復制目錄。

    • 默認情況下復制鏈接文件,只會復制鏈接文件本身

  • 常用選項:

    • mode:權限

    • ownership:屬主和屬組

    • timestamps: 時間戳

    • context:安全標簽

    • xattr:擴展屬性

    • links:符號鏈接

    • all:上述所有屬性

    • -r | -R ,遞歸復制,可以復制目錄及其目錄中的文件

    • -i,交互式提醒,默認為cp的命令別名

    • -p,保留原文件的屬主,時間戳

    • -a,遞歸保留源文件的所有屬性,用于歸檔備份

    • -d:復制符號鏈接文件本身,而非其指向的源文件;

    • -f:強制覆蓋目標文件;

    • —preserv= :保留源文件特定的屬性信息 

MV命令

  • 作用:移動并可對文件重命名,默認情況可以移動目錄

  • 用法:

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

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

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

  • 常用選項: 

    • -i:顯示警告信息,默認

    • -f:強制操作force)

RM命令

  • rm命令默認的命令別名:

    • [root@Red Hat ]# type rm
      rm is aliased to `rm -i'				

      可使用/rm不使用別名

  • 用法:rm [OPTION]... FILE...

  • 常用選項:

    • -f,強行刪除,不提示

    • -r,遞歸刪除目錄

    • -rf,遞歸刪除目錄

注意:所有不用的文件建議不要直接刪除,而是移動至某個專用目錄,以免重要文件被誤刪;(模擬回收站)

INSTALL命令

  • 功能:復制文件并設置屬性

  • 用法:

    • install [OPTION]... -d DIRECTORY...

    • install [OPTION]... SOURCE... DIRECTORY

    • install [OPTION]… -t DIRECTORY SOURCE…

    • install [OPTION]... [-T] SOURCE DEST 

    • 單源復制:

    • 多源復制:

    • 創建目錄:

注意:僅復制文件并制定屬性和權限,不能復制目錄。

  • 常用選項:

    • -m, –mode=MODE:設定目標文件權限,默認為755;

    • -o, –owner=OWNER:設定目標文件屬主;

    • -g, –group=GROUP:設定目標文件屬組;

  • 示例:

  • nstall -o jwl -g milieux /etc/fstab /tmp/fsta

2 bash的工作特性之命令執行狀態返回值和命令行展開所涉及內容

2.1 bash工作特性之命令執行的狀態返回值

  • bash的命令執行狀態返回值可用來表示命令執行成功與否:

    • 命令執行成功:0

    • 命令執行失?。?-255

  • 命令執行完成之后,其狀態返回值保存于bash的特殊變量$?中

  • 因此可以使用echo $?查看上一條命令的執行狀態結果

    注意:命令正常執行時,有的還回有命令返回值。要注意命令返回值與命令執行狀態返回值的區別。

  • 示例:

    • # ls &> /dev/null				
    • echo $?						
    • 0						
    • # lss &>/dev/null						
    • echo $?						
    • 1						
    • 命令返回值::

    • [root@Red Hat mytest3]# ls
      mdadm.conf   mtools.conf  				
    • 命令執行的狀態返回值:


3 如何定義一個命令別名

alias命令

作用:設置命令別名

用法:alias CMDALIAS=‘COMMAND [OPTION] [argument]‘

注意:在shell中定義的別名僅在當前shell生命周期中有效,別名的有效范圍僅為當前shell進程。

unalias命令

作用:取消命令別名

用法: unalias CMDALIAS

如需執行命名本身:\CMD


4 如何在命令中引用另一個命令的執行結果

  • 用法1:$(command)

  • 用法2:反引號`COMMAND`,

  • 作用:把命令中某個子命令替換為其執行結果的過程。

  • 示例:
    echo “The current directory is $(pwd)”
    touch ./file-$(date +%F-%H-%M-%S).txt  #創建當前以時間為名稱的文件		

5 文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息

STAT命令

  • 顯示文件或者文件系統的屬性信息查

  • 用法:stat FILE… 

  • 其中信息包含了文件屬性的三種時間:時間戳

    • access time:表示我們最后一次訪問(僅僅是訪問,沒有改動)文件的時間

    • modify time:表示我們最后一次修改文件的時間

    • change time:表示我們最后一次對文件屬性改變的時間,包括權限,大小,屬性等等。

  • 示例:

  • [root@Red Hat Enterprise Linux etc]# stat /etc/inittab
    		  File: `/etc/inittab'
    		  Size: 884       	Blocks: 8          IO Block: 4096   regular file
    		Device: fd00h/64768d	Inode: 1175722     Links: 1
    		Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
    		Access: 2016-08-24 09:32:47.041490112 +0800
    		Modify: 2016-07-24 18:25:13.351570780 +0800
    		Change: 2016-07-24 18:25:13.351570780 +0800		

6 練習

6.1 使用命令行展開功能來完成以下練習

  1. 創建/tmp目錄下的:a_c,a_d,b_c,b_d

  2. 創建/tmp/mylinux目錄下的:

mylinux/

├── bin

├── boot

│   └── grub

├── dev

├── etc

│   ├── rc.d

│   │   └── init.d

│   └── sysconfig

│   └── network-scripts

├── lib

│   └── modules

├── lib64

├── proc

├── sbin

├── sys

├── tmp

├── usr

│   └── local

│   ├── bin

│   └── sbin

└── var

├── lock

├── log

└── run

示例代碼:

1. mkdir /tmp/{a,b}_{c,d}

2. mkdir -pv /mylinux/{bin,boot{,/grub},dev,etc/
{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},
var/{lock,log,run}}

6.2 顯示/var目錄下,所有以1開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其他字符)的文件或目錄

示例代碼:

ls -d 1*[0-9]*[[:lower:]]

6.3 顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄

示例代碼:

ls -d [0-9]*[^0-9] /etc

6.4 顯示/etc目錄下,以非字母開頭,后面跟一個字母以及其它任意長度任意字符的文件或目錄

ls -d [^a-z][a-z]*

6.5 在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22

touch tile-$(date +%Y-%m-%d-%H-%M-%S)

6.6 復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中

cp -r /etc/p*[^0-9] /tmp/mytest1

6.7 復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中

cp -r /etc/*.d /tmp/mytest2

6.8 復制/etc目錄下所有以1或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中

cp -r [1mn]*.conf /tmp/mytest3

原創文章,作者:N22-武漢-enfp,如若轉載,請注明出處:http://www.www58058.com/40016

(0)
N22-武漢-enfpN22-武漢-enfp
上一篇 2016-08-29
下一篇 2016-08-29

相關推薦

  • sed命令解析

    處理文件的工具sed Stream EDitor, 行編輯器 一次只讀一行,只處理一行,不對源文件做處理,至輸出到屏幕上模式空間 sed是一種流編輯器,它一次處理一行內容。處理時,把當前處理的行存儲在臨時緩沖區中,稱為“模式空間”(pattern space), 接著用sed命令處理緩沖區中的內容,處理完成后,把緩沖區的內容送往…

    Linux干貨 2016-08-11
  • MariaDB

    Mariadb 結構化數據–>關系型數據庫 范式:Entry(每一行來描述一個整體) 半結構化數據–>YAML,XML,JSON 非結構化數據–>日志文件 NoSQL 關系型數據庫:事務能力 ACID測試(原子性,一致性,隔離性,持久性) MariaDB or MySQL: 層次模型–>…

    Linux干貨 2016-11-15
  • Linux文件管理相關及命令別名、執行狀態等

    Linux文件管理相關命令有:cp,mv,rm         文件查看類命令有:cat,tac,head,tail,more,less         接下來,逐個介紹:   &…

    Linux干貨 2016-11-04
  • 網絡N23期第一周(計算機的組成及功能及Linux的發行版等)

    一. 描述計算機的組成及功能 計算機由五大硬件組成:” 運算器 + 控制器 + 儲存器 + 輸入設備 + 輸出設備” 。 運算器(Datapath):運算器的功能是對數據進行各種算術運算和邏輯運算,即對數據進行加工處理。 控制器(Control):是整個計算機的中樞神經,其功能是對程序規定的控制信息進行解釋,根據其要求進行控制,調度程序、數據、地址,協調計算…

    Linux干貨 2016-09-22
  • 設計模式(九)外觀模式Facade(結構型)

    1. 概述      外觀模式,我們通過外觀的包裝,使應用程序只能看到外觀對象,而不會看到具體的細節對象,這樣無疑會降低應用程序的復雜度,并且提高了程序的可維護性。例子1:一個電源總開關可以控制四盞燈、一個風扇、一臺空調和一臺電視機的啟動和關閉。該電源總開關可以同時控制上述所有電器設備,電源總開關即為該系統的外觀模式設計。 2.…

    Linux干貨 2015-07-06
  • 0809作業

    4、如何設置tab縮進為4個字符? 在/etc/vimrc中加入一行 set ts=4 保存退出 5、復制/etc/rc.d/init.d/functions文件至/tmp目錄;替換/tmp/functions文件中的/etc/sysconfig/init為/var/log; :%s@/etc/sysconfig/init@/var/log@g 6、刪除/t…

    Linux干貨 2016-08-11

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-30 09:14

    如果能在文件管理類命令說明后添加一些典型的使用樣例就更好了

欧美性久久久久