網絡班22期+第二周作業練習

常用的文件管理命令:

  • ls,顯示文件或目錄

    • -l:顯示文件或目錄的包括權限、屬主、屬組大小創建日期等詳細信息

      • [root@centos7 ~]# ls -l
        total 16
        -rw-r--r--. 1 root root   64 Aug 27 18:33 11
        -rw-r--r--. 1 root root   63 Aug 27 17:54 22
        -rw-------. 1 root root 1242 Jul 29 17:51 anaconda-ks.cfg
        drwxr-xr-x. 2 root root    6 Aug 21 00:45 Desktop
        drwxr-xr-x. 2 root root    6 Aug 21 00:45 Documents
        drwxr-xr-x. 2 root root    6 Aug 21 00:45 Downloads
    • -a:顯示所有文件,-A:顯示所有文件但不包過. ..

    • -d:顯示目錄本身而非目錄下的文件,一般配合-l使用

      • [root@centos7 ~]# ls Desktop
        mytest.out
        [root@centos7 ~]# ls -dl Desktop
        drwxr-xr-x. 2 root root 23 Sep  5 17:07 Desktop
    • -h:配合 -l ,以K、M、G等方式顯示文件大小,更易讀,但文件大小不精確

    • -r:逆序顯示,-R:遞歸顯示

  • cp,復制文件

    • -i:覆蓋交互提示

    • -r:遞歸復制

    • -f:強制覆蓋

    • 單源復制

      • [root@centos7 tmp]# cp test1.pic testdir
    • 多源復制

      • [root@centos7 tmp]# cp testscr.pic testusb.pic testdir
    • 目錄復制

      • [root@centos7 tmp]# cp -rf cups testdir
        [root@centos7 tmp]# ls testdir
        cups
  • mv:移動文件或改名,用法類似cp

    • [root@centos7 tmp]# mv test1.pic testdir
      [root@centos7 tmp]# mv testscr.pic testpic
  • rm:刪除文件或目錄,用法類似cp

    • -r:遞歸刪除,慎用

    • -f:強制刪除

    • -d:刪除空目錄

  • mkdir:創建文件夾

    • -p:如要創建的目標目錄的父目錄不存在,則自動為其創建

      • [root@centos7 tmp]# mkdir -pv d1/d2/d3
  • touch:創建空文件或修改文件時間戳

    • -c:目標文件不存在時,不予創建文件

    • -a:修改Access time

    • -m:修改Modify time

    • -t:指定時間

  • pwd:顯示當前路徑

  • cd:切換目錄

    • cd ~:切換回家目錄

    • cd -:上次和本次的目錄來回切換

bash特性之命令狀態返回值

linux命令有2種結果狀態,一種是命令結果輸出,一種是命令執行狀態

如需要顯示/tmp目錄下的內容:

[root@centos7 ~]# ls /tmp
cups  d1  t1  t2  testdir  testpic  testusb.pic

如只需要知道 testpic文件是否存在,而不需要顯示任何信息:

[root@centos7 tmp]# ls testpic &> /dev/null
[root@centos7 tmp]# echo $?
0

將命令執行結果(和錯誤信息)重定向至linux黑洞/dev/null,不讓其顯示任何信息

通過echo $?來檢測命令是否執行成功,$?保存了上條命令的執行狀態值

0:執行成功

非0:失敗

bash特性之命令行展開

創建/tmp下的a、b、c,

一般為mkdir /tmp/a /tmp/b /tmp/c;

如用命令行展開特性則是 

mkdir /tmp{a,b,c},相當于mkdir /tmp/a /tmp/b /tmp/c

練習:

1、創建a_c,a_d,b_c,b_d

[root@centos7 t1]# mkdir -pv {a,b}_{c,d}
mkdir: created directory ‘a_c’
mkdir: created directory ‘a_d’
mkdir: created directory ‘b_c’
mkdir: created directory ‘b_d’

2、創建/tmp/mylinux下的若干目錄

[root@centos7 ~]# mkdir -p /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}}

[root@centos7 ~]# tree /tmp/mylinux
/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

24 directories, 0 files

文件元數據

[root@centos7 ~]# stat 11
  File: ‘11’
  Size: 64        	Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d	Inode: 138944011   Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2016-08-27 18:33:45.928314700 +0800
Modify: 2016-08-27 18:33:36.369314412 +0800
Change: 2016-08-27 18:33:36.369314412 +0800
 Birth: -

文件名、大小、屬主、屬組,時間戳等等

用touch修改 Access、Modify、Change時間

命令別名 alias

顯示別名alias

設置別名:

[root@centos7 ~]# alias chkver='uname -a'
[root@centos7 ~]# chkver
Linux centos7 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

刪除別名:unalias chkver

[root@centos7 ~]# unalias chkver
[root@centos7 ~]# chkver
bash: chkver: command not found...

引用一個命令的執行結果

·· 和 $(cmd)

[root@centos7 ~]# mkdir $(date "+%Y-%m-%d-%T")

練習:

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

  2. [root@centos7 ~]# ls -d /var/l*[0-9]*[a-z]
  3. 顯示/etc下,以任意1個數字開頭,且以非數字結尾的文件或目錄

  4. [root@centos7 ~]# ls /etc/[0-9]*[^0-9]
  5. 顯示/etc下以非字母開頭,后跟了一個字母及其他任意長度任意字符的文件或目錄

  6. [root@centos7 ~]# ls /etc/[^a-z][a-z]*
  7. 在/tmp下創建以tfile開頭,后面跟當前日期和時間的文件

  8. [root@centos7 ~]# mkdir $(date "+%Y-%m-%d-%T")
  9. 復制/etc下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1

    復制/etc下所有以.d結尾的文件到/tmp/mytest2

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

[root@centos7 tmp]# mkdir -pv  mytest{1,2,3}
mkdir: created directory ‘mytest1’
mkdir: created directory ‘mytest2’
mkdir: created directory ‘mytest3’
[root@centos7 tmp]# cp -rf /etc/p*[^0-9] mytest1
[root@centos7 tmp]# cp -rf /etc/*.d mytest2
[root@centos7 tmp]# cp -rf /etc/[l,m,n]*.conf mytest3

原創文章,作者:ryanhp,如若轉載,請注明出處:http://www.www58058.com/43741

(0)
ryanhpryanhp
上一篇 2016-09-05
下一篇 2016-09-06

相關推薦

  • 文本處理-三劍客-grep

    文本過濾
    grep [OPTIONS] PATTERN [FILE…]

    2018-03-16
  • 運維架構之httpd

    Web Service 傳輸層:提供進程地址 Port number tcp:傳輸控制協議,面向連接,通信前需建立虛擬鏈路,結束后拆除;0-65535 udp:用戶數據報協議,無連接;0-65535 IANA 0-1023:眾所周知,永久分配給固定應用使用;22/tcp(ssh)、80/tcp(http)、443/tcp(https) 1024-41951:…

    系統運維 2018-06-04
  • 用戶和組的四大配置文件簡介

    一. 用戶的由來 linux系統擁有的就是資源,最重要的事就是對資源的分配,資源分給誰?在linux上資源的訪問是對用戶賦予不同的權限實現,也就是說能訪問資源的單位是用戶。那用戶在獲取資源之前要實現證明自己是本用戶,這個過程稱為認證,他通過密碼和用戶名實現。在用戶登錄時會將用戶輸入的用戶名和密碼進行校驗,校驗過程就是將輸入的用戶名和密碼與linux系統上記錄…

    Linux干貨 2016-10-24
  • linux中bash的基礎特性和基本文件管理命令

    linux的文件管理類命令 linux系統下的涉及到目錄管理命令,主要有 mkdir,rmdir linux系統下也會用到許多文件查看類命令,包括cat,tac,head,tail,more,less等 linux系統下涉及的文件管理類命令主要有cp,mv,rm 本節我們主要說明文件管理類命令的使用方法。 cp命令的使用方法 首先,cp這個命令的作用是可以復…

    Linux干貨 2016-09-26
  • 任務計劃配置

        任務計劃:         linux任務計劃,周期任務執行         未來的某個時間點執行一次任務:at,batch:系統自行選擇空閑時間去執行此處指定的任務 &n…

    Linux干貨 2016-09-12
  • nginx配置(三)

    ngx_http_upstream_module模塊     #分流The ngx_http_upstream_module module is used to define groups of servers that can be referenced by the proxy_pass, fastcgi_pass, uwsgi_pa…

    Linux干貨 2017-05-08
欧美性久久久久