马哥教育网络班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

相关推荐

  • FTP服务

        FTP是一个非常古老的协议,其主要的作用是用于文件的传输。FTP采用明文的方式传输,极其不安全,但在局域网等环境中使用还是比较方便的。 一、工作原理     FTP的工作方式分为主动模式与被动模式。     1、主动模式 &nbsp…

    Linux干货 2015-07-08
  • MarkdownPad2 简单使用指南

    MarkdownPad2 简单使用指南 一级标题 二级标题 三级标题加代码 四级标题 这里是加粗 这里是正文and English 888 这里有正文嵌入代码这种样式 这里是代码块 这种使用的代码块 还有引用 这种格式 这种格式再加粗 拖下来一点的格式加个代码 斜体 斜体内的加粗 自我改好的样式 注意是这种风格的样式! 附:一个很全的颜色代码网页h…

    2016-11-13
  • 22期第十二周课堂练习

    1、请描述一次完整的http请求处理过程; (1)建立和处理连接:接收请求或者拒绝请求; (2)接收请求:接收来自于网络上的主机请求报文中对某特定的资源的一次请求的过程; (3)处理请求:对请求报文进行解析,获取客户端请求的资源及请求方法等相关信息 (4)访问资源:获取请求报文中请求的资源 (5)构建响应报文; (6)发送响应报文; (7)记录日志; 2、h…

    Linux干货 2016-12-26
  • lvs初探

    LVS 简述 HA基础知识 lvs配置 简述 什么是lvs? lvs是linux virtual server linux虚拟服务的缩写,通过一台调度服务器来调度收到的请求并分发给后端的real server。 lvs的功能是什么? lvs能够实现在大并发的情况下,将前端调度器收到的请求分发给后端服务器处理,实现了负载均衡集群的作用。 lb基础知识 lb集群…

    Linux干货 2016-05-31
  • 10 文本处理のsed狗带

    sed 介绍 工作原理 语法 参数选项:-n, -e, -r, -f, -i 地址定界 编辑命令 查找替换 空间操作 练习 参考文档 sed介绍 sed是一个(stream editor)。         1) :使用sed只能在命令行下输入编辑命令来编辑文…

    Linux干货 2016-08-12
  • 编译安装Apache

    实验环境:CentOS 6 安装包版本:httpd-2.2.29.tar.bz2 一、安装前准备     (1)、获取httpd-2.2.29.tar.bz2安装包     (2)、准备开发工具,安装相应的包组 yum groupinstall -y&nbsp…

    Linux干货 2016-08-24

评论列表(1条)

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

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