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

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

文件管理命令:ls、cd、pwd、mkdir、rmdir、cp、rm.、mv、touch、cat、more、less、head、tail

1)ls命令:顯示目錄文件

 

-a 顯示所有文件,包括隱藏文件

 ~]# ls -a /etc
.                        maven
..                       mime.types
abrt                     mke2fs.conf
acpi                     modprobe.d

 

-l 詳細信息顯示

~]# ls -l /etc
total 2012
drwxr-xr-x.  3 root root   4096 May 29  2016 abrt
drwxr-xr-x.  4 root root   4096 May 29  2016 acpi
-rw-r–r–.  1 root root     44 Mar 29 00:40 adjtime
-rw-r–r–.  1 root root   1512 Jan 12  2010 aliases
-rw-r–r–.  1 root root  12288 May 30  2016 aliases.db

 

-d 查看目錄屬性

~]# ls -ld /etc
drwxr-xr-x. 116 root root 12288 Mar 31 03:33 /etc

 

2)cd命令:切換目錄

(1)~]# cd /etc
[root@localhost etc]#

(2)etc]# cd ..
[root@localhost /]#

cd ..回到上一級目錄

3.pwd命令:顯示當前所在的工作目錄

 ~]# pwd
/root

4.mkdir命令:創建新目錄

                   -p: 存在于不報錯,且可自動創建所需的各目錄;

                   -v: 顯示詳細信息

                  -m MODE: 創建目錄時直接指定權限

(1)

tmp]# mkdir newdir

tmp]# ls
functions       orbit-gdm           pulse-oHuVPHu8zq3e   yum.log
keyring-6nzrnS  orbit-root          test
newdir 

(2)  mkdir -p test1/test2/test3/test4 (一起創建)

(3) mkdir -m 744 test2

5.rmdir命令:刪除空目錄

    -v: 顯示過程

(1)tmp]# rmdir -v newdir
rmdir: removing directory, `newdir'

6.cp命令:復制文件或目錄

 

(1)~]# cp /etc/fstab /tmp/fstab
[root@localhost ~]# ls /tmp
fstab      

7.rm命令:刪除文件

               -i: 交互式   

             

                   -f: 強制刪除

                    -r: 遞歸

 ~]# rm -rf /tmp/fstab
[root@localhost ~]# ls /tmp
functions       orbit-root          test
keyring-6nzrnS  pulse-5nccTOAXaEH9  virtual-root.RMXqj5
orbit-gdm       pulse-oHuVPHu8zq3e  yum.log

8.mv命令:移動文件或改名

     

                     -i: 交互式

                   -f: 強制

(1) ~]# mv /etc/fstab /tmp/fstab.1
[root@localhost ~]# ls /tmp
fstab.1         orbit-gdm           pulse-oHuVPHu8zq3e   yum.log
functions       orbit-root          test
keyring-6nzrnS  pulse-5nccTOAXaEH9  virtual-root.RMXqj5
9.touch命令:文件的時間戳管理工具或創建空文件

 

 文件:metadata, data

                   查看文件狀態:stat

 

                   三個時間戳:

                            access time:訪問時間,簡寫為atime,讀取文件內容

                            modify time: 修改時間, mtime,改變文件內容(數據)

                            change time: 改變時間, ctime,元數據發生改變

 

         touch命令:

                   touch [OPTION]… FILE…

                            -a: only atime

                            -m: only mtime

                            -t STAMP:

                                      [[CC]YY]MMDDhhmm[.ss]

                            -c: 如果文件不存,則不予創建

(1)~]# touch -c /tmp/fstab.1
[root@localhost ~]# ls /tmp
fstab.1         orbit-gdm           pulse-oHuVPHu8zq3e   yum.log
functions       orbit-root          test
keyring-6nzrnS  pulse-5nccTOAXaEH9  virtual-root.RMXqj5


10.cat命令:顯示文件內容(查看比較小的內容 )

                           -v :列出一些看不出來的特殊字符

(1)

~]# cat /tmp/fstab.1

#
# /etc/fstab
# Created by anaconda on Sun May 29 20:03:08 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=7717b113-583c-458d-b683-46d2140428ee /                       ext4    defaults        1 1
UUID=9b961181-2f96-4e33-84f0-e685957fab58 swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0

11.moer命令:分頁顯示文件內容

                          – d: 顯示翻頁及退出提示

               空格鍵(space)或f 顯示下一頁

               Enter  顯示下一行

               q或Q    退出

12.less命令:一頁一頁顯示

13.head命令:顯示文件的前幾行

           

                           -c #: 指定獲取前#字節

                            -n #: 指定獲取前#

               -#:

(1)

~]# head -3 /tmp/fstab.1

#
# /etc/fstab

14.tail命令:顯示文件的后幾行

              

                           -c #: 指定獲取后#字節

                            -n #: 指定獲取后#

                                     -#

                            -f: 跟蹤顯示文件新追加的內容

(1) ~]# tail -5 /tmp/fstab.1
UUID=9b961181-2f96-4e33-84f0-e685957fab58 swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0

   

 

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

 命令的執行結果狀態

                   成功

                   失敗

 

                   bash使用特殊變量$?保存最近一條命令的執行狀態結果:

                            0:成功

                            1-255:失敗

 

                   程序執行有兩類結果:

                            程序的返回值;

                            程序的執行狀態結果

(1)~]# ls /var
account  cvs    games  local  mail  preserve  tmp
cache    db     gdm    lock   nis   run       www
crash    empty  lib    log    opt   spool     yp
[root@localhost ~]# echo $?
0
(2)~]# echo $?
0
[root@localhost ~]# ls /varr
ls: cannot access /varr: No such file or directory
[root@localhost ~]# echo $?
2

3、請使用命令行展開功能來完成以下練習:
   (1)、創建/tmp目錄下的:a_c, a_d, b_c, b_d

    tmp]# mkdir {a,b}_{c,d}
[root@localhost tmp]# ls
a_c  fstab.1         orbit-root          virtual-root.RMXqj5
a_d  functions       pulse-5nccTOAXaEH9  yum.log
b_c  keyring-6nzrnS  pulse-oHuVPHu8zq3e
b_d  orbit-gdm       test

   (2)、創建/tmp/mylinux目錄下的: 

 

root@localhost ~]# 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

 

 

 

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

 

文件的時間戳管理工具:
 touch

 文件:metadata, data
  查看文件狀態:stat

  三個時間戳:
   access time:訪問時間,簡寫為atime,讀取文件內容
   modify time: 修改時間, mtime,改變文件內容(數據)
   change time: 改變時間, ctime,元數據發生改變

 touch命令:
  touch [OPTION]… FILE…
   -a: only atime
   -m: only mtime
   -t STAMP:
     [[CC]YY]MMDDhhmm[.ss]
   -c: 如果文件不存,則不予創建

 

~]# stat bin
stat: cannot stat `bin': No such file or directory
[root@localhost ~]# stat  /bin
  File: `/bin'
  Size: 4096       Blocks: 8          IO Block: 4096   directory
Device: 801h/2049d Inode: 8196        Links: 2
Access: (0555/dr-xr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2015-03-31 03:33:10.280924126 +0800
Modify: 2015-03-29 04:44:57.659993910 +0800
Change: 2015-03-29 04:44:57.659993910 +0800

 

 

 

 

 

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

 

命令別名(alias)

                   通過alias命令實現:

                            (1) alias

                                     顯示當前shell進程所有可用的命令別名;

                            (2) alias NAME='VALUE'

                                     定義別名NAME,其相當于執行命令VALUE;

 

root@localhost ~]# alias na='ls -ld'
[root@localhost ~]# na /etc
drwxr-xr-x. 116 root root 12288 Mar 31 04:09 /etc

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

 

 #  ls -d /var/l*[0-9]*[[:lower:]]

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

 

# ls -d /etc/[0-9]*[^0-9]

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

 

#  ls -d /etc/[^[:alpha:]][[:alpha:]]*

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

tmp]# touch tfile '-date '+%Y-%m-%d %H:%M:%S'

tmp]# ls
functions       mytest3             test
keyring-6nzrnS  orbit-gdm           tfile-2015-03-31-05-21-01
mylinux         orbit-root          virtual-root.RMXqj5
mytest1         pulse-5nccTOAXaEH9  yum.log
mytest2         pulse-oHuVPHu8zq3e

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

 

root@localhost ~]# cp -a /etc/p*[^0-9] /tmp/mytest1
[root@localhost ~]# ls /tmp/mytest1
pam.d         pm                            prelink.conf.d
pango         pm-utils-hd-apm-restore.conf  printcap
passwd        pnm2ppa.conf                  profile
passwd-       popt.d                        profile.d
pbm2ppa.conf  portreserve                   protocols
pcmcia        postfix                       pulse
pinforc       ppp                           purple
pki           prelink.cache
plymouth      prelink.conf
11、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中

 

[root@localhost ~]# cp -a /etc/*.d /tmp/mytest2
[root@localhost ~]# ls /tmp/my
mylinux/ mytest2/
[root@localhost ~]# ls /tmp/mytest2/
bash_completion.d  ld.so.conf.d    profile.d  request-key.d
chkconfig.d        logrotate.d     rc0.d      rsyslog.d
cron.d             lsb-release.d   rc1.d      rwtab.d
depmod.d           makedev.d       rc2.d      sane.d
dnsmasq.d          modprobe.d      rc3.d      setuptool.d
dracut.conf.d      oddjobd.conf.d  rc4.d      statetab.d
event.d            pam.d           rc5.d      sudoers.d
init.d             popt.d          rc6.d      xinetd.d
latrace.d          prelink.conf.d  rc.d       yum.repos.d

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

 

root@localhost ~]# cp -a /etc/[l,m,n]*.conf /tmp/mytest3
cp: target `/tmp/mytest3' is not a directory
[root@localhost ~]# mkdir /tmp/mytest3
[root@localhost ~]# cp -a /etc/[l,m,n]*.conf /tmp/mytest3
[root@localhost ~]# ls /tmp/mytest3
latrace.conf   libuser.conf    mke2fs.conf    nsswitch.conf
ld.so.conf     logrotate.conf  mtools.conf    ntp.conf
libaudit.conf  ltrace.conf     nfsmount.conf

 

原創文章,作者:Net20_侯燕東,如若轉載,請注明出處:http://www.www58058.com/18638

(0)
Net20_侯燕東Net20_侯燕東
上一篇 2016-06-23
下一篇 2016-06-23

相關推薦

  • linux之網絡管理基礎

    一.IP分配的概述 公式1 一個網段的主機數=2^主機位數-2 主機ID位數=32-網絡ID位數 公式2 網絡ID=IP與子網掩碼 公式3 劃分子網: 一個大網分成若干個小網 網絡ID向主機位借位n,子網數2^n 公式4 損失IP-=(子網數2^n-1)*2 合并多個小子網成一個大的超網 如 172.16.0.0-172.31.0.0 就是主機ID向網絡ID…

    Linux干貨 2016-09-16
  • 第五周作業

    1、顯示/boot/grub/grub.conf中以至少一個空白字符開頭的行; ~]# grep  “^[[:space:]]\{1,\}” /boot/grup/grup.conf                     &…

    2017-03-01
  • DevOpsDays大會,818坐標上海,我們來啦!?。?

    DevOpsDays 818, 坐標上海, DevOpsDays上海大會, 我們來啦?。?! 我們來啦!??! 我們來啦?。?! 重要的事情說三遍。 標簽: 運維  移動開發  IT技術  DevOps  2008年的敏捷會議上,Andrew Clay Shafer 和 Patrick Debois 討論了關于“敏…

    Linux干貨 2017-08-10
  • N26-第四周作業

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。     ~]#cp -r /etc/skel /home/tuser1     ~]#chmod -R go=-rwx /home/tuser1…

    Linux干貨 2017-01-05
  • Linux用戶、組、權限管理

    Linux用戶與組管理 Linux系統上,用戶通過內核拷貝程序到內存中,從此發起進程。進程以發起者的身份進行,進程對文件的訪問權限,取決于發起進程的用戶的權限。而有些后臺進程或服務類進程以非管理員身份運行,為此也需要創建多個普通用戶,此類用戶不需登錄。 系統中,用戶類別分為管理員和普通用戶(系統用戶和登錄用戶),組類別分為基本組和附加組。管理系統上的用戶與組…

    Linux干貨 2016-12-07
  • iptables的一個小文檔

    iptables:    iptables五表五鏈        felter表            INPUT   …

    Linux干貨 2017-04-30

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-06-23 14:04

    寫的很棒,可以在多關注一些排版方面的技巧

欧美性久久久久