N22-第二周作业-对Linux的基础操作命令的理解及用法示例

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

Linux上文件管理类命令常用的有:pwd、ls、cd、cp、touch、mv、rm、rmdir

  1)pwd:显示当前工作目录

 

1471349202103493.jpg

  2)ls:列出指定目录下的内容

  

1471349351791127.jpg

常用的选项有:

  -a:列出目录中的所有文件,包括隐藏文件

1471349423709536.jpg

 -A:显示除.和..之外的所有文件

1471349511836218.jpg

 -l,相当于–long,显示文件的详细属性信息,包括权限、所有者、属组、大小、创建日期、文件是否是链接等

1471349665309230.jpg

 -h:相当于–human-readable,,配合-l使用,对文件大小单位换算,换算后结果可能非准确值

 

1471350005123832.jpg

 -d:配合-l使用,查看目录自身属性而非其内部的文件列表

 

1471350098394589.jpg

-r:reverse,逆序显示:

1471350275905310.jpg

 -R:recursive,递归显示

1471350355540519.jpg

  3)cd:切换当前目录

   cd:切换回家目录

1471350783696484.jpg

   cd ~:切换回自己的家目录

   cd ~USERNAME:切换至指定用户的家目录

1471350938546486.jpg

   cd -:在上一次所在目录与当前目录直接来回切换

1471350887452517.jpg

 4)cp:复制文件

常用语法:

   单源复制:cp [OPTION]… [-T] SOURCE DEST

   多源复制:cp [OPTION]… SOURCE… DIRECTORY
                    cp [OPTION]… -t DIRECTORY SOURCE…
其中,在单源复制时,如果DEST不存在:则事先创建此文件,并复制源文件的数据流至DEST中;如果DEST存在:(1)0DEST是非目录文件:则覆盖目标文件;(2)DEST是目录文件:则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流;对于多源复制来说,如果DEST不存在,则显示错误; 如果DEST存在:(1)DEST是非目录文件,则显示错误;(2)如果DEST是目录文件,则分别复制每个文件至目标目录中,并保持原名;
常用选项:

   -i:交互式复制,即覆盖之前提前用户确认;

1471359849296215.jpg

   -f:强制覆盖已存在的目标文件###不知道我理解的对不对 但是我试验的时候就是成功不了,最后在小伙伴的帮助下终于理解了cp -f的用法。-f是cp的默认参数,为为了限制root的那么大的权限,才在root下定义别名cp =cp -f

   -r, -R:递归复制目录,复制目录及目录中的内容到目标文件,注意:不能使用目录复制文件

1471362688809256.jpg

   -d:复制符号链接文件本身,而非其指向的源文件;

1471437768167263.jpg

此时显示/tmp/rc1.d指向的是错误文件 

-a:-dR –preserve=all, archive,用于实现归档;

1471439630687855.jpg

5)touch:创建新的空文件或者修改文件的访问时间和修改时间为当前时间

1471440470264568.jpg

常用选项:

   -c:知道的文件路径不存在的时候不予创建新文件

1471440629380394.jpgtouch使用-c选项后没有在/下创建文件zxn

   -a:仅修改access time

   -m:仅修改modify time

  -t STAMP :指定要改为哪一刻时间,而这里修改的是mtime

 6)mv:在同目录下叫重命名,不在同目录下叫移动文件

常用选项:用法同cp

   -i:交互式

   -f:强制

7)rm:删除文件

1471444301541040.jpg

常用选项:同cp

 -i:交互

 -f:强制:

 -r:递归

 8)rmdir:删除目录,用法跟rm相同。

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

(1)命令执行成功与否,可通过命令的执行状态结果返回值来确定。

1471446173484226.jpg

(2)命令行展开:

  ~:展开为用户的家目录

 1471447219651820.jpg

 {}:将花括号内的文件路径展开

 1471447297776926.jpg

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

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

1471447712602556.jpg

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

1471611309715691.jpg

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就可以看到某文件的元数据信息,如下图:

1471612321674422.jpg

使用命令touch来修改文件的时间戳

1471612718104839.jpg

touch -a:仅仅修改access time

touch -m:仅修改modify time

touch STAMP:指定要改为哪一刻时间

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

使用命令alias来定义别名。

1471613057599185.jpg

1471613847108218.jpg

引用命令的执行结果使用:$(COMMAND)或`COMMAND`

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

   ls -d /var/1*[0-9]*[a-z]

1471614893484799.jpg

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

   ls -d /etc/[[:digit:]]*[^[:digit:]]

1471615623636005.jpg

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

   ls -d /etc/[^[:alpha:]][[:alpha:]]*
1471615851577258.jpg

9、在/tmp目录下创建一tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-08-19-22-12-22.

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

   1471616554131999.jpg

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

 mkdir /tmp/mytest1 && cp -r /etc/p*[^[:digit:]] /tmp/mytest1

1471617177224650.jpg

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

  mkdir /tmp/mytest2 && cp -r /etc/*.d /tmp/mytest2

1471617330812076.jpg

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

  mkdir /tmp/mytest3 && cp -r /etc/[l,m,n]*.conf /tmp/mytest3

 1471617732463619.jpg

 

 

原创文章,作者:N22-北京-张zhangzhang,如若转载,请注明出处:http://www.178linux.com/36589

(0)
N22-北京-张zhangzhangN22-北京-张zhangzhang
上一篇 2016-08-22
下一篇 2016-08-22

相关推荐

  • shell脚本语言中的选择执行

    shell脚本语言中的选择执行 概述 程序执行过程分为顺序执行、选择执行和循环执行。顺序执行是指程序按照步骤一步一步地运行。选择执行是指程序根据特定条件选择两项或者多项中的一项运行。循环执行是指程序根据特定条件重复执行直到某个节点结束,继续运行其他步骤。本篇文章从判断条件和条件判断式简要说明shell脚本语言中程序选择执行的用法。 shell脚本中的判断条件…

    Linux干货 2017-04-17
  • 98-mysql数据备份

    一. 数据备份基础知识

    2016-11-20
  • N22-第四周博客作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]# ll -d  /etc/skel/drwxr-xr-x. 3 root root 74 3月&…

    Linux干货 2016-09-19
  • DNS实验

    本实验需的注意问题:      1、运营商的服务器需要更改根指向服务器地址      2、根服务器上的配置文件/etc/named.conf需要将"."根区域禁用;      3、更改区域数据库文件的属组为named;c…

    Linux干货 2016-12-12
  • keepalived实现lvs高可用并负载均衡lamp

    一、安装lamp     1、安装httpd(172.16.23.211) [root@cs1 ~]# yum install -y httpd     2、安装php(172.16.23.211) [root@cs1 …

    Linux干货 2016-05-14
  • nginx负载均衡搭建

    组 网络拓扑图 nginx负载均衡服务器搭建 首先准备三台机器 主机A(nginx负载均衡器) 主机B 主机C 主机A需两块网卡(一块外网,一块内网) 主机B和主机C各一块 (各一块内网的IP,如果主机B C和主机A内网网卡在一个网段就不需要配置网关地址了。 规划好网络后,nginx负载主机分别ping下各rs主机是否可通 主机A打开核心转发功能 #echo…

    Linux干货 2017-05-17

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-22 14:21

    写的很好,排版还可以在漂亮一点,加油