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

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

常見文件管理命令有:touch/stat/file/rm/cp/mv/nano

示例如下:

[root@localhost week2_test]# touch newfile
[root@localhost week2_test]# ls -al
total 4
drwxr-xr-x.  2 root root   20 Aug 19 23:00 .
drwxrwxrwt. 20 root root 4096 Aug 19 23:00 ..
-rw-r--r--.  1 root root    0 Aug 19 23:00 newfile

[root@localhost week2_test]# stat newfile
  File: ‘newfile’
  Size: 0         Blocks: 0          IO Block: 4096   regular empty file
Device: 803h/2051dInode: 106057863   Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: unconfined_u:object_r:user_tmp_t:s0
Access: 2016-08-19 23:00:30.008106826 -0700
Modify: 2016-08-19 23:00:30.008106826 -0700
Change: 2016-08-19 23:00:30.008106826 -0700
 Birth: -
[root@localhost week2_test]# file newfile
newfile: empty
[root@localhost week2_test]# rm newfile 
rm: remove regular empty file ‘newfile’? y
[root@localhost week2_test]# ls 
[root@localhost week2_test]# cp /etc/fstab /etc/redhat-release  .
[root@localhost week2_test]# ls -al
total 12
drwxr-xr-x.  2 root root   39 Aug 19 23:01 .
drwxrwxrwt. 20 root root 4096 Aug 19 23:01 ..
-rw-r--r--.  1 root root  501 Aug 19 23:01 fstab
-rw-r--r--.  1 root root   38 Aug 19 23:01 redhat-release
[root@localhost week2_test]# mv fstab fstab.bak
[root@localhost week2_test]# ls -al
total 12
drwxr-xr-x.  2 root root   43 Aug 19 23:02 .
drwxrwxrwt. 20 root root 4096 Aug 19 23:02 ..
-rw-r--r--.  1 root root  501 Aug 19 23:01 fstab.bak
-rw-r--r--.  1 root root   38 Aug 19 23:01 redhat-release
[root@localhost week2_test]# nano fstab.bak 
^G 獲取幫助
^O 將該文件內容寫入磁盤      
^R 將另一個文件內容寫入此文件     
^Y 上一頁
^V 下一頁
^K 剪切光標所在的那一行
^U 撤銷所有剪切  
^C 顯示光標所在行在全文中的位置
^X 退出

2、bash的工作特性之命令執行狀態返回值和命令行展開設計的內容和實例演示。

執行狀態返回值:若執行狀態成功則返回0;若不成功則返回1-255的任意值

[root@localhost week2_test]# ls 
fstab.bak  redhat-release
[root@localhost week2_test]# echo $?
0
[root@localhost week2_test]# lssss
bash: lssss: command not found...
[root@localhost week2_test]# echo $?
127

花括號展開:

[root@localhost week2_test]# mkdir -pv test/{x/m,y}
mkdir: created directory ‘test’
mkdir: created directory ‘test/x’
mkdir: created directory ‘test/x/m’
mkdir: created directory ‘test/y’

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

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

[root@localhost tmp]# 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@localhost mylinux]#mkdir -pv {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@localhost mylinux]# tree
.
├── 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

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

[root@localhost var]# stat /etc/fstab
  File: ‘/etc/fstab’
  Size: 501       Blocks: 8          IO Block: 4096   regular file
Device: 803h/2051dInode: 33554562    Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: system_u:object_r:etc_t:s0
Access: 2016-08-19 22:57:40.645802142 -0700
Modify: 2016-08-09 09:06:24.459001039 -0700
Change: 2016-08-09 08:24:19.940440587 -0700
 Birth: -

修改時間戳方法如下:

touch [OPTION]... FILE...
-a 僅改變訪問時間戳
-m 改變修改時間戳
-t [[CC]YY]MMDDhhmm[.ss] 修改為指定時間戳

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

定義別名:alias ls='ls –color=auto'

取消別名:ualias

未寫入配置文件/etc/bashrc或者~/.bashrc的別名只能在本次shell的生命周期中有效

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

[root@localhost week2_test]# touch "$(date)"
[root@localhost week2_test]# ls
Fri Aug 19 23:31:03 PDT 2016

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

正則表達式實現:

[root@localhost var]# ls -d /var | grep ^1.*[[:digit:]]\+.*[[:lower:]]$

通配符實現:

[root@localhost var]# ls -d /var/1*[[:digit:]]*[[:lower:]]

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

[root@localhost var]# ls -d /etc/[[:digit:]]*[^[:digit:]]

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

[root@localhost var]# ls -d /etc/[^[:alpha:]][[:alpha:]]*

9、在/tmp目錄下創建以tfile開頭,后面跟當前日期和時間的文件

[root@localhost tmp]# touch tfile-$(date +%Y-%m-%d-%H-%M-%S)

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

find實現:

[root@localhost /]# find /etc -name "p*[^[:digit:]]" -type f -exec cp {} /tmp/mytest1/ \;
[root@localhost /]# find /etc -name "p*[^[:digit:]]" -type d -exec cp -r {} /tmp/mytest1/ \;

cp實現:

[root@localhost /]# cp -r /etc/p*[^[:digit:]] /tmp/mytest1

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

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

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

[root@localhost /]# cp /etc/{l,m,n}*.conf /tmp/mytest3

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

(0)
zhangxiaolazhangxiaola
上一篇 2016-08-22 09:30
下一篇 2016-08-22 09:30

相關推薦

  • FHS文件系統各目錄功能

    FHS文件系統各目錄功能 摘要: 本文主要介紹Linux的文件組織目錄結構。 一、Linux 目錄結構 在講 Linux 目錄結構之前,你首先要清楚一點東西,那就是 Linux 的目錄與 Windows 的目錄的區別,或許對于一般操作上的感受來說沒有多大不同,但從它們的實現機制來說是完全不同的。 一種不同是體現在目錄與存儲介質(磁盤,內存,DVD 等)的關系…

    Linux干貨 2016-10-18
  • 認識shell

    一、認識shell 什么是shell?shell為單詞外殼的意思。那么這是誰的外殼?我們知道一個系統中實際工作的是那些硬件,cpu、內存、磁盤等。我們如何調用這些硬件為我們工作?實際上,硬件是由內核kernel控制的。我們可以通過kernel控制硬件,但我們不能直接和內核kernel交流。我們需要一個外殼,這個外殼就是shell來溝通kernel。何為she…

    Linux干貨 2015-09-22
  • 學習Linux,記得有困難,找“男人”。

      對于Linux初學者而言,較短時間內需要涉及到幾十個命令,而且每個命令還可輔以短選項、長選項…讓初學者在實踐時苦不堪言。   一頭霧水時,請找Super"man"!  "man"的使用非常簡單,命令行直接輸入man COMMAND,如#man ls。此處的COMMAND均指…

    Linux干貨 2016-01-15
  • 第四周練習

    1、復制/etc/skel目錄為/home/tuser1, 要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 cp -r /etc/skel /home/tuser1 chmod -R 700 /home/tuser1 2、編輯/etc/group文件,添加組hadoop。 vi /etc/group hadoop:x:2017 …

    Linux干貨 2017-08-04
  • 網絡班第27期第一周作業

    1、         描述計算機的組成及其功能 CPU:主要由控制器和運算器組成,其他還有寄存器和緩存等。 控制器:其功能是對程序規定的控制信息進行解釋,根據其要求進行控制,調度程序、數據、地址,協調計算機各部分工作及內存與外設的訪問等。 運算器:功能是對數據進行各種算術運算和邏…

    2017-07-29
  • RAID功能介紹及其使用

    RAID功能介紹及其使用 獨立硬盤冗余陣列(RAID, Redundant Array of Independent Disks),舊稱廉價磁盤冗余陣列(Redundant Array of Inexpensive Disks),簡稱磁盤陣列。其基本思想就是把多個相對便宜的硬盤組合起來,成為一個硬盤陣列組,使性能達到甚至超過一個價格昂貴、容量巨大的硬盤。根據…

    Linux干貨 2017-01-06

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-22 14:28

    寫的很好,排版也很棒,加油,3大題2小題都看不到了

欧美性久久久久