马哥教育网络班20期+第2周课程练习

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

cat, more, less, tail, head
cat  一般用于查看文本,可以通过管道结合more或者less等命令一起使用
more 功能类似cat命令是整个文件的内容从上到下显示在屏幕上,more会以一页一页的显示方便使用者逐页阅读.
less 对文件或其它输出进行分页显示的工具,用法比起 more 更加的有弹性,在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了less时,就可以使用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!
tail 查看文件从最后的部分看起,默认不带参数表示查看最后10行. 例如: taii -100 /etc/passwd  查看文件最后100行(做个演示,其实没有100行之多.默认不带参数,就是相当于 tail -10 /etc/passwd)
head 和tail命令相反,一般用于查看文件.默认不带参数,只是查看文件的前10行.此处就不写例子.

2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。

bash的工作特性:
  (1)history
   可以通过history查看历史命令
   可以通过命令的前面的数字,来调用命令等. 如: #!99     调用history的第99条命令
  (2)命令补全
   在shell命令行,可以通过TAB键补全命令.
  (3)路径补全
   在shell命令行,可以通过TAB键补全命令.
  (4)命令行展开
   {}:可承载一个以逗号分隔的列表,并将其展开为多个路径
   例如:mkdir  /tmp/a/{b,c}    其实就等价于 mkdir /tmp/a/b  和 mkdir /tmp/a/c
  (5)命令的执行结果状态
   可以通过 echo $? 查看上条命令的执行状态,返回0-255随机的一个数字
   0:成功
   1-255:失败

3、请使用命令行展开功能来完成以下练习:

   (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d

mkdir /tmp/{a,b}_{c,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

mkdir -p /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、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。

使用stat命令查看
[root@hx5 tmp]# stat yum_save_tx-2016-02-29-21-19OtAjO2.yumtx 
 File: `yum_save_tx-2016-02-29-21-19OtAjO2.yumtx'
 Size: 4654        Blocks: 16         IO Block: 4096   regular file
 Device: fd00h/64768d    Inode: 915645      Links: 1
 Access: (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root)
 Access: 2016-02-29 21:19:25.694405867 +0800
 Modify: 2016-02-29 21:19:25.699405868 +0800
 Change: 2016-02-29 21:19:25.699405868 +0800
三个时间戳:
 access time:访问时间,简写为atime,读取文件内容
 modify time: 修改时间, mtime,改变文件内容(数据)
 change time: 改变时间, ctime,元数据发生改变
可使用touch命令修改时间戳信息

    

5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?

[root@localhost tmp]# alias la='ls -la'
name=`COMMAND`, name=$(COMMAND)

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。

[root@hx5 ~]# touch tfile-`date +"%Y-%m-%d-%H-%M-%S"`
[root@hx5 ~]# ls tfile-2016-03-01-15-11-04 
    tfile-2016-03-01-15-11-04

10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。

[root@hx5 ~]# cp -a /etc/p*[^0-9] /tmp/mytest1

11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。

[root@hx5 ~]# cp -a /etc/*.d /tmp/mytest2

12、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。

[root@hx5 ~]# cp -a /etc/[l,m,n]*.conf /tmp/mytest3

原创文章,作者:Net20_赤羽,如若转载,请注明出处:http://www.178linux.com/18809

(0)
Net20_赤羽Net20_赤羽
上一篇 2016-06-22
下一篇 2016-06-22

相关推荐

  • TCP/IP

    TCP/IP不是一个协议,而是一个协议族的统称。里面包括IP协议、IMCP协议、TCP协议。 TCP/IP分层: 这里有几个需要注意的知识点: 互联网地址:也就是IP地址,一般为网络号+子网号+主机号 域名系统:通俗的来说,就是一个数据库,可以将主机名转换成IP地址 RFC:TCP/IP协议的标准文档 端口号:一个逻辑号码,IP包所带有的标记 Socket:…

    Linux笔记 2018-05-05
  • Week2–Linux基础三

    一. Linux上的文件管理类命令都有哪些,其常用的使用方法和例子是啥呢? 文件管理类命令大概就是这些: ls, cd, pwd, mkdir, rmdir, cp, rm, mv, touch, cat, more, less, head, tail, file, grep. 目录或文件操作类: 1. ls: (查看文件名命令) -a :全部的文件,连同隐…

    Linux干货 2016-12-12
  • 磁盘分区管理

    进行磁盘分区之前首先要了解什么是磁盘分区:         磁盘分区是在磁盘上划分几个逻辑部分,盘片一旦划分成数个分区,不同类的目录与文件可以存储进不同的分区。越多分区,也就有更多不同的地方,可以将文件的性质区分得更细,按照更为细分的性质,存储在不同的地方以管理文件;但太多分区就…

    2017-08-21
  • 正则表达式详解

    正则表达式详解

    2017-09-20
  • 【福利招聘】上海/天力集藏/周末双休+五险一金+餐补+节假日福利

    天力集藏介绍 上海天力集藏文化传播有限公司是专业从事集藏文化产业研究、开发、资讯服务的企业。公司总部设在上海,并投资开发集藏文化传播、在线交易、为一体的大型电子商务平台。天力集藏致力于传统文化服务于现代生活的研究与开拓,为个人提供相关藏品的托管、鉴定、交易、交收等电子化交易系统服务。致力于藏品的流通与普及。 天力集藏有完善的组织架构,深厚的技术资源,严格的风…

    Linux职位 2016-05-06
  • N22-第五周作业

    1、显示当前系统上root、fedora或user1用户的默认shell;  egrep "^(root|fedora|user1)" /etc/passwd|awk -F: '{printf "%-15s:%-s\n",$1,$7}' 2…

    Linux干货 2016-09-15