第二周作业

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

答:针对文件常用的命令有如下几大类:

a)文件创建命令 touch

      touch /path/filename  —-新建一个空的文件

b)文件复制命令 cp

      cp /path1/filename1 /path2/                  —-复制path1路径下的filename1文件到path2路径下,并保持文件名不变

      cp /path1/filename1 /path2/filename2   —-复制path1路径下的filename1文件到path2路径下,并修改文件名为filename2

      其中cp命令中几个常用参数如下:

      -d:如果复制的是链接文件,则保留链接文件属性,而非复制文件的实际数据

      -l:以硬链接方式复制,而非复制文件的实际数据

      -R(-r):执行递归复制,主要针对目录文件

      -i:执行交互式复制,复制过程中会询问用户的选择

      -p:保留源文件的基本属性,而非自动继承目的路径的属性

      –presever=all:保留除-p基本属性之外的其他属性,如xattr(括展属性),SElinux上下文属性等

      -a:等同于-dR –preserve=all 

 c)文件移动命令 mv

      mv /path1/filename1 /path2/                   —-复制path1路径下的filename1文件到path2路径下,并保持源文件名不变,同时删除path1路径下的源文件

      mv /path1/filename1 /path2/filename2    —-复制path1路径下的filename1文件到path2路径下,并修改文件名为filename2,同时删除path1路径下的源文件

      其中mv命令中几个常用参数如下:

      -i:执行交互式操作,文件或者目录移动过程中会询问用户的选择

      -f:强制模式,不询问用户的选择,强制执行命令动作

      -u:更新模式,当目标文件比源文件陈旧时,执行mv操作,反之则不执行

 d)文件删除命令 rm

      rm /path/filename  —-删除文件或者目录

      其中rm命令中常用参数如下:

      -i:交互式操作,删除过程中询问用户的选择

      -f:强制模式,直接执行删除不询问用户选择

      -r:递归模式,以递归方式执行删除文件或目录,此方式可以用户对非空目录的删除

 e)遍历文件命令 ls

      ls /path/filename

      其中ls命令中常用参数如下:

      -l:长格式显示文件的信息,7段文件信息(文件类别与文件基本权限,链接次数,文件属主,文件属组,文件大小,文件创建时间日期,文件名)

      -d:仅显示目录文件,不显示目录下所含的文件以及子目录

      -Z:显示文件的SElinux上下文属性

      -i:显示文件或目录的i-node信息

      -R:递归显示目录以及目录所包含的文件和子目录信息

      -t:按时间排序,而非默认的文件名字符排序

      -S:按文件大小排序

      -r:反向输出排序结果,常和-t,-S等联合使用

      -n:显示属主,属组的id号,而非其名称

      -h:按照人类易读的数值显示文件大小信息

      –color=auto:自动显示不同文件类别的颜色(如:蓝色代表目录文件,紫色代表链接文件,黄色代表设备文件,黑色代表普通文件)

 f)文件基名与目录名

      basename /path/filename    —-显示/path/filename中的基名,即filename

      dirname /path/filename        —-显示/path/filename中的目录名,即path

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

答:

   命令执行状态分为如下两种:

    执行成功:0

    执行失败:1-255

    使用“$?"特殊变量保存命令执行的状态返回值

   例如:

~]$ ls /etc/abc

ls: 无法访问/etc/abc: 没有那个文件或目录

# 执行ls命令提示错误,没有找到相应文件或目录

此时查询命令执行状态返回值如下

~]$ echo $?

2

#返回值是2(失败)

~]$ cd /yes

bash: cd: /yes: 没有那个文件或目录

#执行目录切换命令,提示不存在/yes目录

~]$ echo $?

1

#查询命令执行状态返回值是1(失败)

~]$ cd /etc/

etc]$ 

#执行正确的目录切换命令,切换目录到/etc下

etc]$ echo $?

0

#查询命令执行状态返回值是0(成功)


   命令行展开有如下几种

  ~:表示当前用户的家目录

  etc]$ cd ~

   ~]$ 

   ~account:表示指定account账户的家目录

   ~]# cd ~user1

   user1]# 

   {}:可以代表花括号内以逗号(,)分割的多个表示路径的名称,例如  /etc/{path1,path2} 代表/etc/path1以及/etc/path2两个目录

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

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

 答:mkdir /tmp/{a,b}_{c,d}

  (2)、创建/tmp/mylinux目录下的:

  mylinux/

      |——bin

      |——boot

              |——grup

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

 答:文件的元数据包含文件的权限,文件的属性以及括展属性,文件所对应的inode号等信息,通过stat查看文件元数据信息

第二周作业 

  使用touch命令,vim编辑文件,mv修改文件名等都可以影响文件的时间戳


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

答:

定义别名:alias 命令1=‘命令2’

命令引用:通过管道符号“|”,把前一个命令的结果作为下一个命令的输入,例如:echo “redhat”| passwd –stdin user表示把前一个echo显示的redhat字符作为后一个passwd密码输入的值

6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其他字符)的文件或目录

答:ls -r /var | grep ^l.*[0-9]\{1,\}.*[a-z]$  或者 ls -d /var/l*[0-9]*[a-z]

7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录

答:ls -r /etc | grep ^[0-9].*[^0-9]$ 或者 ls -d /etc/[0-9]*[^0-9]

8、显示/etc目录下,以非字母开头后面跟了一个字母以及其他任意长度任意字符的文件或目录

答:ls -r /etc | grep ^[^[:alpha:]][[:alpha:]].* 或者 ls -d /etc/[^[:alpha:]][[:alpha:]]*

9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22

答:touch /tmp/tfile-`date +%Y-%m-%d-%H-%M-%S`

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

答:cp -a /etc/p*[^0-9] /tmp/mytest1

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

答:cp -a /etc/*.d /tmp/mytest2

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

答:cp -a /etc/[l,m,n]*.conf /tmp/mytest3

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

(0)
N24_shishenN24_shishen
上一篇 2016-11-19 15:15
下一篇 2016-11-19 23:30

相关推荐

  • diy自己的linux

    准备一台liunx的机器,我用的是liunx虚拟机 单独加载一块硬盘,我加载了一块20G的硬盘,然后用fdisk /dev/sdb进行分区,sdb1用来作为将来系统的/boot分区,所有100M就可以了,sdb2用来作为将来系统的/分区,我给了10G。然后将两个分区格式化为ext4系统。 mkdir /mnt/boot mkdir /mnt/sdc2 mou…

    Linux干货 2016-09-14
  • linux上的文件查找工具:locate和find

    一、非实时超找工具 locate     1、locate是查询系统上预建的文件索引数据库/var/lib/mlocate/mlocate.db文件索引实在系统比较空闲的时候自动进行的,是系统的周期性任务,因为是周期性任务,所以有些短期的数据无法更新到数据库,如果需要马上应用,乣管理员手动更新数据库,用命令updatedb来执行。同时索引…

    Linux干货 2016-08-16
  • tomcat优化

    安装过程就不多说了,本次主要说明我在实际工作中的一些优化。    1,修改tomcat的运行模式,常见的有 bio,nio, apr三种    我选择的apr模式,这种对tomcat的性能有较大提高. a:可以根据压力测试工具来进行测试观察。(其实我没对修改apr模式后压测,我直接问百度的) b:重新启动tomcat后…

    Linux干货 2016-06-28
  • 马哥教育网络班20期+第6周练习博客

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; [root@bogon ~]# cp /etc/rc.d/rc.sysinit  /tmp/rc.sysinit […

    Linux干货 2016-07-22
  • Linux 入门基础 及一些常见命令(下)

    date:                    显示日期时间:date [OPTION]… [+FORMAT]        &nbsp…

    Linux干货 2016-09-17
  • 密码保护:测试信息, 顺便贴上以前年少轻狂的内容.(未整理)

    无法提供摘要。这是一篇受保护的文章。

    Linux干货 2017-07-11