N25第二周作业

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

cp(copy) 复制,mv(move)移动或者更名,mkdir(创建目录,-p可以同时创建父目录),rm(删除目录,-r 可以递归操作,rmdir(删除空目录)删除文件或者目录,建议建立一个临时回收站,否则误删或者短时间内还需要的文件),touch,file,stat, 文件名的通配符“,?,[],[^]” * 操作文件数据流的命令:more,less,cat,tac,tr

~]#cp sourcefile destination ~]#mv sourcefile changenamefile ~]#mkdir /tmp/1/2/5 ;同时创建多级目录 ~]#rm -r /tmp/1/ ; 可以删除嵌套的多级目录

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

命令执行状态的返回值和命令执行返回本身是不一样的,前者可以通过echo $?获取上一条命令执行状态的返回值,如果为0,这成功执行,非0,执行失败(1-255);后者是,命令执行的结果值。

~]# ll $(which abc);abc是没有的命令,结果$? 为0 ~]# labc $(which bash); labc 是没有的命令,结果$? 127 执行失败

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

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

 ~]# rmdir  /tmp/{a,b}_{c,d}

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

   ~]#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}}}

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 clock_my.c ;  一个测试文件   File: `clock_my.c' (文件名)`   Size: 1919(文件数据大小(1919字节))     Blocks: 8(有         IO Block: 4096   regular  fileDevice: 80bh/2059d    Inode: 544225      Links: 1 Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/  root) 权限 Access: 2016-09-20 18:07:15.556559765 +0800 ;最近一次访问时间 Modify: 2016-09-16 22:48:52.446615299 +0800;最近一次数据时间 Change: 2016-09-16 22:48:52.490616967 +0800;最近一次修改元数据时间

touch命令可以修改文件时间戳,

touch命令:改变文件的时间戳(timestamps)
    -c:指定路径不存在文件时,不创建
    -a: 仅修改access时间
    -m:仅修改modify time 
    -t:指定改变的时间[[CC][YY]MMDDhhmm[.ss]

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

尽在当前shell有效的话:

~]# alias mytime='date +%H:%M:%S' ``或者$()都可以,但建议用后者更安全,eg:~]# ll $(which ifconfig)

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

~]# ll -d /var/l*[0-9]*[a-z] 或者 ~]# ll /var/l*[[:digit:]]*[[:lower:]]

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

~]# ll -d /etc/[0-9]*[^0-9]

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

~]# ll -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 -rf /etc/p*[^0-9]   /tmp/mytest1

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

~]# cp -rf /etc/*.d  /tmp/mytest2

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

~]# cp -rf /etc/[lmn]*.conf  /tmp/mytest3

原创文章,作者:不忘初衷,如若转载,请注明出处:http://www.178linux.com/64678

(0)
不忘初衷不忘初衷
上一篇 2016-12-25 21:01
下一篇 2016-12-25 23:40

相关推荐

  • Linux 基础(三)——用户管理&正则表达式

    1、  列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 who | cut -d " " -f1 | uniq 2、  取出最后登录到当前系统的用户的相关信息。 last -1 | cut -d " " -f1 | head -1 | id 3、  …

    Linux干货 2016-11-08
  • 虚拟主机的实现

    示例1:基于ip 编辑配置文件,切换到最后一行,增加: <VirtualHost 192.168.1.117:80>     ServerName web1.ams.com     DocumentRoot "/vhosts/web1/htdocs" </VirtualHost&g…

    Linux干货 2016-08-05
  • Shell 变量类型及用法

    一、      什么是变量          变量源于数学,在计算机语言中能储存计算机结果或能表示值的抽象概念,变量可以由变量名访问,在指令语言中,变量通常是可变的。Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个…

    Linux干货 2016-08-12
  • sed命令用法

    sed命令 [option]  “script”  file sed命令是一种行编辑工具,他是逐行对文件进行编辑。sed命令有一个模式空间,他将一行命令读取进模式空间进行编辑,完成后将本行数据打印再读取下一行数据进行处理。 option: -n:静默模式不显示模式空间内容 -f:从指定文件中读取 -i:修改源文件(-i.###会自动将原文…

    Linux干货 2016-08-12
  • Linux哲学思想

    一、一切皆文件     1、将所有资源都抽象成文件形式;     2、几乎可以通过读写文件的形式,操作所有的系统资源。 二、由一个一个的小程序组成,且每一个小程序只做一件事情,并且只做好该件事情即可     1、一个小程序只做好一件事情,即…

    Linux干货 2016-09-19
  • grep,find用法-2

    1、显示当前系统上root、fedora或user1用户的默认shell; grep -E “^(root|fedora|user1)>” /etc/passwd | cut -d: -f1,7 [root@bogon Desktop]# grep -E “^(root|fedora|user1)\>” /etc/pass…

    Linux干货 2017-08-04