马哥教育网络班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.178linux.com/18638

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

相关推荐

  • 马哥教育网络班21期+第3周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@centos ~]# who | awk '{print $1 $NF}'| uniq -d root(192.168.40.1) derulo(19…

    Linux干货 2016-07-22
  • 第5周

    1, ~]# grep "^root\>" /etc/passwd | cut -d: -f7 4,~]# ifconfig | grep "\<[0-9][0-9][0-9]\>" 7, ~]# find /var -user root -group mail 8,~]# fin…

    Linux干货 2016-09-15
  • bash的特性和目录管理命令

    bash的特性和目录管理命令 bash特性     1. 命令补全机制: 所谓的命令补全,就是当输入命令的前几个字符的时候,按下tab,此时,bash根据输入的字符串,到path路径下进行寻找,把找到的且能唯一根据这个字符串标识的命令,予以补全。 如果根据这个字符串能在一个目录下面找到多个相同的命令,则再按一下tab就能列出所有…

    Linux干货 2016-10-29
  • 配置Nginx作为反向代理服务器

    配置Nginx作为反向代理服务器      一、nginx作为反向代理的工作模型: 1、nginx作为反向代理的工作模型       nginx工作在应用层,其能理解并可以提取出http请求报文中的首部信息中的请求方法、url、http协议版本等信息。   &…

    Linux干货 2016-10-29
  • 第六周作业 bash编程学得好痛苦啊,啊啊啊~~需要挺住!

    请详细总结vim编辑器的使用并完成以下练习题 VIM很强大,但是万变不离其宗,最核心的三模式以下图表示: 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; :%s/^[[:blank:]]\+.*/\0#/g 2、复制/boot/grub/grub.conf至/…

    Linux干货 2016-12-19
  • 开始学习总结的一些基本知识点

       第一VNC软件(面授班课堂用的),这款软件采用C/S架构(client/sever客户端和服务器端)还有VNC协议(virtual Network computing虚拟网络计算)协议。虽说这款软件对网络班没有实际用途,但自己了解下这款软件的构成也是不错的。    第二开始学习需要的虚拟机软件其中包括VMWARE…

    Linux干货 2016-10-29

评论列表(1条)

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

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