馬哥教育網絡20期+第二周練習博客

1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。
2、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。
3、請使用命令行展開功能來完成以下練習:
   (1)、創建/tmp目錄下的:a_c, a_d, b_c, b_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
4、文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息。
5、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?
6、顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。
7、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。
8、顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其它任意長度任意字符的文件或目錄。
9、在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。
10、復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。
11、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。
12、復制/etc/目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。

1、linux常用、基礎文件管理命令

ls 查看目錄文件

    常用選項有:

-a:顯示所有檔案及目錄; 
-A:顯示除影藏文件“.”和“..”以外的所有文件列表;
-C:多列顯示輸出結果。這是默認選項; 
-l:與“-C”選項功能相反,所有輸出信息用單列格式輸出; 
-F:在每個輸出項后追加文件的類型標識符, 
-i:顯示文件索引節點號(inode)。
-k:以KB(千字節)為單位顯示文件大??;
-l:以長格式顯示目錄下的內容列表。
-s:顯示文件和目錄的大小,以區塊為單位;
-R:遞歸處理

復制命令 cp

cp [option]..[-T] sou_file  des_file 復制文件到文件
cp [option]..sou_file dir_file 復制文件到目錄 
cp [option].. -t dir_file sou_file 復制文件到目錄
常用option              
-i 提示是否覆蓋 
-R -r 遞歸復制目錄及目錄中的文件、子目錄
-v 顯示復制過程
-f 強制復制
-a 歸檔 備份,相當于-dR --presverv=all,保留文件所有屬性

mv 移動文件

mv [OPTION]... [-T] SOURCE DEST
mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE...
常用option	
-i 提示是否覆蓋
-f 強制覆蓋

rm 刪除工具,默認只能刪除文件、

rm [option].. file_name
常用options有:
-i 提示是否要刪除
-f 強制刪除
-r 遞歸刪除目錄及目錄下的文件、子目錄

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

bash的工作特性之命令執行狀態返回值存儲在$?中,使用echo $?顯示,其中0表示成功執行成功,1-255的數字則表示執行失敗

    如:

[root@localhost ~]# cd /mnt
[root@localhost mnt]# echo $?
0   --->0表示cd /mnt 執行成功
[root@localhost mnt]# ls -a
.  ..  hgfs
[root@localhost mnt]# echo $?
0  --->0表示ls -a  執行成功
[root@localhost mnt]# la 12312421321
-bash: la: command not found
[root@localhost mnt]# echo $?
127  --->127表示執行失敗
[root@localhost mnt]#

命令行展開

~: 展開為用戶的主目錄
~USERNAME:展開為指定用戶的主目錄
{}:可承載一個以逗號分隔的列表,并將其展開為多個路徑
/tmp/{a,b} = /tmp/a, /tmp/b
/tmp/{tom,jerry}/hi = /tmp/tom/hi, /tmp/jerry/hi

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

    創建/tmp目錄下的:a_c, a_d, b_c, b_d

[root@localhost mnt]# mkdir {a,b}_{c,d}
[root@localhost mnt]# ls
a_c  a_d  b_c  b_d  hgfs
[root@localhost mnt]#

  創建/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

root@localhost mnt]# mkdir -p mylinux/{bin,boot/{grup},dev,etc/{rc.d/{init.d},sysconfig/{network-scripts}},lib/{module
s},lib64,proc,sbin,sys,tmp,usr/{lcoal/{bin,sbin}},var/{lock,lgo,run}}[root@localhost mnt]# cd mylinux/
[root@localhost mylinux]# ls -R
.:
bin  boot  dev  etc  lib  lib64  proc  sbin  sys  tmp  usr  var
 
./bin:
 
./boot:
{grup}
 
./boot/{grup}:
 
./dev:
 
./etc:
rc.d  sysconfig
 
./etc/rc.d:
{init.d}
 
./etc/rc.d/{init.d}:
 
./etc/sysconfig:
{network-scripts}
 
./etc/sysconfig/{network-scripts}:
 
./lib:
{modules}
 
./lib/{modules}:
 
./lib64:
 
./proc:
 
./sbin:
 
./sys:
 
./tmp:
 
./usr:
{lcoal
 
./usr/{lcoal:
bin}  sbin}
 
./usr/{lcoal/bin}:
 
./usr/{lcoal/sbin}:
 
./var:
lgo  lock  run
 
./var/lgo:
 
./var/lock:
 
./var/run:

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

stat 查看時間戳

[root@localhost mnt]# stat mylinux/
  File: `mylinux/'
  Size: 4096      	Blocks: 8          IO Block: 4096   directory
Device: 802h/2050d	Inode: 274810      Links: 14
Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-06-20 20:35:14.315886505 +0800
Modify: 2016-06-20 20:35:01.926885104 +0800
Change: 2016-06-20 20:35:01.926885104 +0800
[root@localhost mnt]#

touch 修改文件的時間戳

[root@localhost mnt]# stat /etc/fstab 
  File: `/etc/fstab'
  Size: 875       	Blocks: 8          IO Block: 4096   regular file
Device: 802h/2050d	Inode: 403417      Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-06-19 12:27:03.116999300 +0800
Modify: 2016-06-19 12:26:54.081999285 +0800
Change: 2016-06-19 12:26:54.083999234 +0800
[root@localhost mnt]# touch /etc/fstab 
[root@localhost mnt]# stat /etc/fstab 
  File: `/etc/fstab'
  Size: 875       	Blocks: 8          IO Block: 4096   regular file
Device: 802h/2050d	Inode: 403417      Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-06-20 20:42:54.669885008 +0800
Modify: 2016-06-20 20:42:54.669885008 +0800
Change: 2016-06-20 20:42:54.669885008 +0800
[root@localhost mnt]#

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

    別名

[root@localhost mnt]# alias la='ls -a'
[root@localhost mnt]# la
.  ..  mylinux
[root@localhost mnt]# alias cdetc='cd /etc/sysconfig/'
[root@localhost mnt]# cdetc
[root@localhost sysconfig]#

       引用另一個命令的執行結果:通過管道 或 變量

[root@localhost www]# ls
htpasswrod  vhosts
[root@localhost www]# cat htpasswrod 
status:$apr1$R28ZTyJV$8GQ64MY8BxWwZSu6HGo040
123456
abc
[root@localhost www]# cat htpasswrod  | grep "status"
status:$apr1$R28ZTyJV$8GQ64MY8BxWwZSu6HGo040
[root@localhost www]#
[root@localhost www]# test=$( cat /www/htpasswrod)
[root@localhost www]# cat /www/htpasswrod 
status:$apr1$R28ZTyJV$8GQ64MY8BxWwZSu6HGo040
123456
abc
[root@localhost www]# echo $test
status:$apr1$R28ZTyJV$8GQ64MY8BxWwZSu6HGo040 123456 abc
[root@localhost www]#

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

[root@localhost www]# ls /var
account  crash  db     games  lib      local  log   named  opt       run    tmp  yp
cache    cvs    empty  gdm    llk100a  lock   mail  nis    preserve  spool  www
[root@localhost www]#  ls -d /var/l*[0-9]*[[:lower:]]
/var/llk100a
[root@localhost www]#  ls -d /var/l*[0-9]*[[:lower:]]

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

[root@localhost /]# ls /etc/[0-9]*[^0-9]
/etc/0kj  /etc/1kj
 
/etc/1abc:
 
/etc/234k:
[root@localhost /]#

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

[root@localhost /]# ls /etc/[^a-z][a-z]*
/etc/0kj  /etc/1kj
 
/etc/1abc:

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

[root@localhost /]# touch /tmp/tfile$(date +%Y-%m-%d-%H-%M-%S)
[root@localhost /]# ls /tmp/tfile*
/tmp/tfile2016-06-20-21-41-46
[root@localhost /]#

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

cp -vrf /etc/p* /tmp/mytest1/

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

cp -vrf /etc/*.d /tmp/mytest2/

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

 cp -vrf /etc/[l,m,n]*.conf /tmp/mytest3






原創文章,作者:Net20-deamon,如若轉載,請注明出處:http://www.www58058.com/19058

(0)
Net20-deamonNet20-deamon
上一篇 2016-06-20 21:25
下一篇 2016-06-21 08:19

相關推薦

  • python Django分頁

    自定義html_helper.py  —>  Page_helper類 #coding:utf-8 from django.utils.safestring import mark_safe class Page_Helper(object):    …

    Linux干貨 2016-08-22
  • man命令的用法

    man 命令的用法    在linux運維工作中,經常會有一些命令我們不是很清楚它們的準確用法,這時候我們就需要去查詢這些命令的用法,linux中就有很多文檔幫助我們去了解這些命令的用法,其中就有一條命令man,下面我就總結一下它的用法。     man 是 manual 的簡寫,提供命令的幫助文件。   &…

    Linux干貨 2017-02-17
  • vim的使用

    本文主要講述vim的使用 一.vim是什么? vim是一個十分著名也十分強大的編輯器,是vi的增強版,是一個模式化的編輯器,英文名稱為 Visual Interface iMprove,在2000年2月Vim贏得了Slashdot Beanie的最佳開放源代碼文本編輯器的美稱。 二.vim的工作模式  (1)編輯模式:也叫命令模式,通過編輯命令實現…

    Linux干貨 2016-10-29
  • rsync+inotify實現數據同步——單向傳輸

    實驗環境:<從A主機推送數據到B主機[B主機可以有多個]> A主機:10.1.43.102 B主機:10.1.43.103 配置流程: —rsyncserver—- <B主機上配置> 1.vim /etc/rsyncd.conf(用戶,目錄,模塊,虛擬用戶及密碼文件) vim /etc/rsyncd.…

    Linux干貨 2016-10-27
  • Linux終端類型

    適用對象:本文適用于初學Linux以及有志于學習Linux的朋友們。   一、         什么是終端 計算機體系中,終端主要是指與計算機連接,并可以與用戶(人類)進行交互的設備。 二、      &nbs…

    Linux干貨 2016-10-14
  • N26_第一周作業

    一、描述計算機的組成及其功能。 計算機系統:是由硬件(Hardware)系統和軟件(Software)系統兩大部分構成。 1、硬件系統: 1)控制器(Control):是整個計算機的中樞神經,其功能是對程序規定的控制信息進行解釋,根據其要求進行控制,調度程序、數據、地址,協調計算機各部分工作及內存與外設的訪問等。2)運算器(Datapath):運算器的功能是…

    2017-02-20

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-06-21 22:31

    寫的很好,案例也很詳細,但是在元字符運用或者讀題的時候沒有把握好,在仔細讀讀題,加油

欧美性久久久久