馬哥教育21期網絡班—第二周課程+練習

Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示

linux文件管理類命令有:cp、mv、rm。
cp:復制
  主要參數:
    -i:交互式,復制前詢問用戶是否確認覆蓋目標文件。
    -r/R:遞歸復制,連同源目錄及以內的子目錄和文件一并復制到目標目錄內。
    -f:強制執行,直接覆蓋目標文件夾或文件,不詢問用戶。
    -v:顯示復制的詳細過程。
    -d:當源為符號鏈接時,目標也復制為符號鏈接,并指向源鏈接的原始文件或目錄。
    -p:保留原文件或目錄的{mode,ownership,timestamps}屬性。
    -a:一般用于文件或目錄備份。參數效果等同于-dpR。
mv:移動或重命名
主要參數:
  -irfv:參數與cp命令一致,此處不多做說明。
rm:刪除文件或目錄
主要參數:
  -irfv:參數與cp命令一致,此處不多做說明。

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

bash命令執行狀態返回值
   命令執行狀態返回值即命令執行的成功或失敗的狀態結果。bash特殊變量"$?"會保存最近一條命令的執行狀態結果。使用echo "$?" 查看。返回值:0代表執行成功;1-255表示執行失敗。
命令行展開
~:展開至當前用戶的家目錄。
~username:展開至指定用戶的家目錄。
{}:可裝載多個以逗號分隔開的列表,并將其展開為多個路徑。
如:創建名為1.test,2.test,3.test三個文件。
  [tracy@tracy ~]# touch {1,2,3}test 
  [tracy@tracy ~]# ls
  1test  2test  3test

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

(1)、創建/tmp目錄下的:a_c, a_d, b_c, b_d

[tracy@tracy ~]# touch /tmp/{a,b}_{c,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

# mkdir -pv /tmp/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}}

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

元數據:存儲的是文件的大小,權限,屬主屬組,時間戳等信息,可使用stat命令查看元數據詳細信息。
stat:查看及修改文件元數據。
  主要參數:
    -a:修改文件訪問時間;
    -m:修改文件被修改時間;
    -c:當文件不存在時,不創建空文件。
    -t STAMP:
     [[CC]YY]MMDDhhmm[.ss]使用指定的日期時間,而非現在的時間;

如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?

命令別名:alias 
      直接使用alias參數可查看當前shell生效的alias別名。
      # alias NAME='VALUE'
在命令中引用另一個命令的執行結果可使用|符號。
      使用格式:COMMAND1 | COMMAND2 | COMMAND3 ...
      如: # cat /etc/inittab | wc -l

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

#ls -ld /var/l*[[:digit:]]*[[:lower:]]

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

# ls -ld /etc/[[:digit:]]*[^[:digit:]]

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

#ls -ld /etc/[^[:alpha:]][[:alpha:]]*

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

# touch tfile-$(date +%F-%H-%M-%S)

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

# mkdir /tmp/mytest1
# cp -rf /etc/p*[^[:digit:]] /tmp/mytest1

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

# mkdir /tmp/mytest2
# cp -rf /etc/*.d /tmp/mytest2/

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

# mkdir /tmp/mytest3
# cp -rf /etc/[1,m,n]*.conf /tmp/mytest3

原創文章,作者:哎喲喂,如若轉載,請注明出處:http://www.www58058.com/22297

(0)
哎喲喂哎喲喂
上一篇 2016-07-07 10:48
下一篇 2016-07-07 10:48

相關推薦

  • 學會在命令行中獲取幫助

    在命令行中獲取幫助是學習Linux必須get的一項技能,學會之后受益多多。  Linux中的命令有內部命令和外部命令之分,通常使用 type 命令來區分 除此之外還可以使用 enable 命令來查看內部命令 enable命令后的許多option可以對這些內部命令了解更多,比如: 想要知道內部命令有多少個 enable -a |wc -l 禁用某個內…

    2017-07-15
  • shell腳本編程基礎練習

    這周,我們學習了shell腳本基礎,那么什么是shell腳本呢? shell script是利用shell的功能所寫的一個程序,這個程序是使用純文本文件,將一些shell的語法與指令寫在里面,然后用正則表達式,管道命令以及重定向向等功能,以達到我們所想要的處理目的。Shell腳本可以幫助我們系統、自動化的去管理和處理一些東西 下面是摘抄出的幾個練習: 首先,…

    2017-08-05
  • C++的std::string的“讀時也拷貝”技術!

    C++的std::string的讀時也拷貝技術! 嘿嘿,你沒有看錯,我也沒有寫錯,是讀時也拷貝技術。什么?我的錯,你之前聽說寫過時才拷貝,嗯,不錯的確有這門技術,英文是Copy On Write,簡寫就是COW,非?!!?!那么我們就來看看這個’?!夹g的效果吧。 我們先編寫一段程序 #include <string> #include…

    Linux干貨 2015-04-03
  • LInux用戶和組管理詳解

    一、用戶和組的概念 Linux系統是多任務、多用戶的分時操作系統。用戶要使用系統資源,需要向管理員驗證身份,由管理員進行認證和授權,并對用戶的行為進行追蹤和審計,以保障系統資源的合理分配以及系統的安全。 要達到賬號管理的目的,需要對用戶和用戶組進行管理。下面分別來介紹用戶管理和用戶組管理。 每個用戶都有唯一的一個編號來標識,這個標識號叫Uid,每個用戶至少屬…

    Linux干貨 2016-08-02
  • 20161019第5天作業

    1、只顯示/root下的隱藏文件 ls -d '.'* 2、只顯示/etc下的目錄 ls -d */ ls -l |grep '^d' ls -F | grep "/$"  &nb…

    Linux干貨 2016-10-20
  • shell腳本之 select 循環菜單及 函數

    select 循環與菜單 select variable in list    do      循環體命令   done select 循環主要用于創建菜單,按數字順序排列的菜單項將顯示在標準錯誤上,并顯示PS3 提示符,等待用戶輸入 用戶輸入菜單列表中的某個數字,執行相應的命令…

    Linux干貨 2016-08-22

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-07-07 11:24

    寫的很好,排版也很棒,可以列舉一些例子來輔助說明。加油

欧美性久久久久