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
下一篇 2017-01-17

相關推薦

  • Linux系統的終端類型

    一、什么是Linux終端     終端–用戶用戶與主機交互,必然要用到的設備。     早期的大型機,想使用的用戶很多,但是主機只有一個,也不可能人手一臺,但是可以做到在主機上接一個分屏器,分屏器的每一個端子上可以接上一套鼠標鍵盤顯示器,就可以直接在主機上進行一些操作了,這就相當于每個人在獨立的操作一臺計算…

    Linux干貨 2016-10-18
  • 進程與周期任務

    STAT:進程狀態: R:running S: interruptablesleeping D: uninterruptable sleeping T: stopped Z: zombie +: 前臺進程 l: 多線程進程 L:內存分頁并帶鎖 N:低優先級進程 <: 高優先級進程 s: session leader,會話(子進程)發起者 top欄位信息…

    Linux干貨 2017-05-15
  • 文件系統的掛載、usb設備光盤的使用

    一、     文件系統的掛載mount: 1.       掛載命令mount使用: (1)掛載: 將額外文件系統與根文件系統某現存的目錄建立起關聯關系,進而使得此目錄做為其它文件訪問入口的行為,掛載點下原有文件在掛載完成后會被臨時隱藏 (2) 卸載:為解除此…

    Linux干貨 2016-08-29
  • loganalyzer——日志分析工具

    Loganalyzer是一款syslog日志和其他網絡事件數據的Web前端。它提供了對日志的簡單瀏覽、搜索、基本分析和一些圖表報告的功能。數據可以從數據庫或一般的syslog文本文件中獲取,所以LogAnalyzer不需要改變現有的記錄架構?;诋斍暗娜罩緮祿?,它可以處理syslog日志消息,Windows事件日志記錄,支持故障排除,使用戶能夠快速查找日志數…

    Linux干貨 2016-10-18
  • bash數據類型探秘

    數組 變量:存儲單個元素的內存空間數組:存儲多個元素的連續的內存空間,相當于多個變量的在調用變量時最好加雙引號,對于字符串中含有空格等字符的能更好的調用集合。數組名和索引索引:編號從0開始,屬于數值索引( 偏移量從默認0開始 )注意:索引可支持使用自定義的格式,而不僅是數值格式,即為關聯索引, bash4.0版本之后開始支持。bash的數組支持稀疏格式(索引…

    Linux干貨 2016-08-24

評論列表(1條)

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

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

欧美性久久久久