N26 第二周作業

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

文件管理類命令有:mkdir rmdir cp mv rm
mkdir:創建文件夾
命令格式:mkdir [OPTION]… DIRECTORY…

# 創建日期文件夾         
mkdir /tmp/`date +%Y-%m-%d`

rmdir:刪除空文件夾
命令格式:rmdir [OPTION]… DIRECTORY…

# 刪除上面創建的日期文件夾         
rmdir /tmp/2017-01-17

cp:拷貝文件或目錄
命令格式:cp [OPTION]… [-T] SOURCE DEST
                 cp [OPTION]… SOURCE… DIRECTORY
                 cp [OPTION]… -t DIRECTORY SOURCE…

# 拷貝文件到目錄        
cp /etc/passwd /tmp/test
# 拷貝并覆蓋文件
cp /etc/shadow /tmp/test/passwd
# 遞歸拷貝文件夾
cp -r /var/log /tmp/test

rm:刪除文件或目錄
命令格式:rm [OPTION]… FILE…

# 刪除目錄下所有文件
rm /tmp/test/*
# 刪除空目錄
rm /tmp/test

mv:移動或重命名文件
命令格式:mv [OPTION]… [-T] SOURCE DEST
                 mv [OPTION]… SOURCE… DIRECTORY
                 mv [OPTION]… -t DIRECTORY SOURCE…

# 移動目錄中所有文件到目標文件夾        
mv /tmp/test/* /tmp/test2
# 重命名文件
mv messages notes.txt

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

在命令執行后,可以立即使用命令“echo $?”打印命令執行的狀態返回值,返回0表示命令執行成功,其他值則表示命令執行失敗
命令行展開涉及兩組符號“~”和 “{,}”
~ :展開為用戶的家目錄

[root@localhost mylinux]# su eric
[eric@localhost mylinux]$ cd ~
[eric@localhost ~]$ pwd
/home/eric

{,}:大括號內包含逗號分隔的路徑列表,展開為多個路徑

mkdir /tmp/test/{a,b}        
# 上面一條命令相當于下面兩條命令
mkdir /tmp/test/a 和 mkdir /tmp/test/b

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

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

mkdir {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 -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}}

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

文件的元數據包括:
        File:文件名,
        Size:文件大小,
        Blocks:文件塊數,
        IO Block:IO塊大小,
        Device:設備號,
        Links:鏈接次數,
        Access:訪問權限,
        Uid:用戶ID,
        Gid:組ID,
        Access time:最近訪問時間,
        Modify time:最近修改數據時間,
        Change time:最近更改元數據時間

# 查看文件元數據
stat /etc/passwd

 更改時間戳可以使用 touch 命令

# 同時修改 Access time, Modify time, Change time
touch /tmp/mytest3.txt
# 修改 Access time
touch -a /tmp/mytest3.txt
# 修改 Modify time
touch -m /tmp/mytest3.txt

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

# 定義別名
alias cls=clear
# 取消別名定義
unalias cls

在命令中引用另一命令的執行結果可以通過兩種格式
(1) COMMAND1 `COMMAND2`

cd `echo /usr/share`

(2) COMMAND1 $(COMMAND2)

mkdir $(date +%Y)

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

[root@localhost var]# mkdir 1plus2minus
[root@localhost var]# touch 1helloCentOS7.txt
[root@localhost var]# cd 1plus2minus/
[root@localhost 1plus2minus]# touch abc.txt
...
[root@localhost var]# ls -d 1*[0-9]*[[:lower:]]
1helloCentOS7.txt  1plus2minus

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

[root@localhost var]# touch 8code
[root@localhost var]# ls -d [0-9]*[^0-9]
1helloCentOS7.txt  1plus2minus  8code

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

# 在/etc目錄中滿足條件的文件或目錄均以"."開頭,由于shell選項dotglob的默認設置,[^a-z]不能匹配"."
[root@localhost etc]# ls -d /etc/[^a-z][a-z]*
ls: cannot access /etc/[^a-z][a-z]*: No such file or directory
# 開啟dotglob,使通配符可以匹配“.”
[root@localhost var]# shopt -s dotglob
[root@localhost etc]# ls -d /etc/[^a-z][a-z]*
/etc/.java  /etc/.pwd.lock  /etc/.updated
# 恢復選項默認值
[root@localhost etc]# shopt -u dotglob
# 查看shell選項
[root@localhost etc]# shopt

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

[root@localhost tmp]# mkdir tfile-`date +%Y-%m-%d-%H-%M-%S`

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

[root@localhost tmp]# mkdir /tmp/mytest1
[root@localhost tmp]# cp -r /etc/p*[^0-9] /tmp/mytest1

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

[root@localhost tmp]# mkdir mytest2
[root@localhost tmp]# cp -r /etc/*.d /tmp/mytest2

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

[root@localhost ~]# mkdir /tmp/mytest3
[root@localhost ~]# cp /etc/[1mn]*.conf /tmp/mytest3

原創文章,作者:和風細雨,如若轉載,請注明出處:http://www.www58058.com/66740

(0)
和風細雨和風細雨
上一篇 2017-01-17 19:06
下一篇 2017-01-17 23:54

相關推薦

  • HA Cluste 的配置:keepalived:vrrp協議 雙主模型

    keepalived:vrrp協議 雙主模型 第一步配置出始環境: 準備兩節點: 主節點:172.18.57.7 long1 備節點:172.18.57.8 long2 (1) 各節點時間必須同步; 同步時間: ~]# yum -y install chrony ~]# vim /etc/chrony.conf ~]# systemctl start chr…

    Linux干貨 2017-05-15
  • 如何用SHELL寫好網絡爬蟲

    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://nolinux.blog.51cto.com/4824967/1550976        上周,老大壓下來任務,讓寫一個網絡爬蟲,負責爬某一個行業網站的數據信息。由于本人只會 sh…

    Linux干貨 2016-08-15
  • 啟動和內核管理

    啟動和內核管理 :      CentOS 5和6的啟動流程     服務管理     Grub管理     自制Linux     啟動排錯 &nb…

    Linux干貨 2016-09-19
  • Linux三劍客之grep使用入門指南

    Linux的grep是一個具有強大功能的文本搜索工具,正確的學習和使用,能很大程度上提高工作效率,減輕運維工作所面臨的壓力。

    2017-09-09
  • 運維自動化之系統安裝

    自動化安裝系統,cobbler的安裝使用

    Linux干貨 2018-01-15
  • 馬哥教育網絡班22期+第三周課程練習

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。  ~]# who |sort -nu root     pts/0        2016-08-…

    Linux干貨 2016-08-29

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-03-02 20:04

    較上篇有不小的提高,加油。

欧美性久久久久