走进Linux(二)

Linux基础知识

1、文件管理类命令

  • mkdir:创建空目录

格式

mkdir [选项](可跟多个选项) 要创建的目录名

选项

-p:递归创建多个目录                                    

命令演示:想要在/tmp/linux/centos下创建test目录

blob.png                                  

因为/tmp/linux/centos路径不存在,提示无法创建目录

若加上选项-p后,若路径不存在则直接创建路径并创建目录

blob.png

-v:显示创建过程即命令执行过程

命令演示:在/tmp/redhat/fedora下创建创建test1,且路径不存在blob.png

与-p选项同时使用,直接创建路径及目录,并显示执行步骤。

-m:设定目录权限,不加则为默认权限

命令演示:在/tmp/linux下创建test2目录,并设定权限为777

blob.png

  • rmdir:删除空目录

格式同mkdir

选项:

-p:连同上一级空目录一同删除

命令演示:与-v同时使用

blob.png

由于/tmp不是空目录,所以无法删除,只能删除/linux/centos/test

  • cp:复制

格式:

复制单个文件:cp [选项](可跟多个选项) [-T] 源文件 目标文件

复制多个文件:cp [选项](可跟多个选项) 源文件 目标目录

                          cp [选项](可跟多个选项) -t 目标目录 源文件

复制单个文件时,目标文件不存在,则会创建目标文件并将源文件中的数据流抽取填充到目标文件。目标文件存在,如果是非目录文件,则会复制源文件的数据流至目标文件中,覆盖目标文件;如果是目录文件,则现在目标目录中创建一个与源文件同名的文件,并复制数据流。

复制多个文件时,目标必须是目录,否则无法执行。

选项:

-i,覆盖前询问

-f,强制覆盖目标文件

-r,递归复制目录及目录下的所有文件

-d,复制链接文件本身,但不跟踪源文件

-a,为每个已存在的目标文件创建备份

命令演示:复制/tmp/centos1/下的abc到/tmp/centos2下的test,目标文件不存在 blob.png

命令演示:复制/tmp/centos1下的123a到/tmp/linux/centos1/123ablob.png

复制单个文件时,若目标文件存在,会提示是否覆盖目标文件,因为cp=‘cp -i’。

命令演示:复制/tmp/centos1/下的123a,12a3,a123到/tmp/centos3/下 blob.png

  • mv:用来移动文件(若源文件与目标同目录,则重命名)

格式:

mv [选项] 源文件或目录 目标文件或目

选项:

-b :若需覆盖文件,则覆盖前先行备份。 

-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;

-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

-u :若目标文件已经存在,且源文件比较新,才会更新

命令演示:复制/tmp/centos2/test1的Abc到/tmp/centos1/下

blob.pngblob.png

命令执行后,Abc移动到/tmp/centos1下

若源文件与目标在同一目录,则重命名文件

blob.png

  • rm:删除文件或目录

格式:

rm [选项] 文件名或目录名

常用选项:

-f, –force    忽略不存在的文件,从不给出提示。

-i, –interactive 进行交互式删除

-r, -R, –recursive   指示rm将参数中列出的全部目录和子目录均递归地删除。

-v, –verbose    详细显示进行的步骤

      –help     显示此帮助信息并退出

      –version  输出版本信息并退出

命令演示:删除/tmp/centos1下的Abc123

blob.png 

系统会询问是否删除,输入y,则确认删除,rm=‘rm -i’

注意:不需要的文件,建议不要直接删除,而是自己创建一个目录,把不需要的文件都移动到该目录,起到类似window回收站的作用,防止误删操作。

  • pwd:显示当前目录

blob.png

  • ls:显示指定目录下的内容列表,默认为当前目录

格式:

ls [选项] 目录名

选项:

-a,显示所有文件,包括隐藏文件

-l,显示所有文件及其详细信息

blob.png

  • cat:查看文本文件内容,并输出,默认输出到标准输出(显示器)

blob.png

  • tail:查看文件后n行,命令后跟-n,表示查看后n行,默认后10行。

blob.png

2、bash工作特性

  • 命令执行状态返回值

echo $?:显示最近一条命令的执行结果

只能查看最近一条命令的执行的状态结果返回值

命令执行成功,则显示:0

命令执行失败,则显示:1-255之间的任意数字 blob.png

返回值为0,最近的命令tail /etc/passwd执行成功

blob.png

输入错误命令,返回值为1,命令执行失败

blob.png

找不到命令,返回值为127,命令执行失败

命令行展开 

  • ~:自动展开为用户家目录或指定用户的家目录

  • {}:可以承载一个以逗号分隔的文件或目录列表,并能够将其展开为多个路径或文件

例如:mkdir /tmp/{centos1,centos2,centos3},则为分别创建/tmp/centos1,/tmp/centos2,/tmp/centos3

演示1:

blob.png

演示2:

blob.png

显示树状结构:

blob.png

3、元数据

文件包含两类数据:数据和元数据

元数据信息包括:

File: 文件

Size: 文件大小 

Blocks: block块数量       

IO Block: 设备block块

Device: 设备号

Links: 文件硬链接次数 

Access: 文件权限

Uid: 文件ID号及所有者

Gid: 组ID号及所有者 

Access: 最近访问时间

Modify: 最近更改时间

Change: 最近改动时间

Birth:文件创建时间

  • stat:查看文件的元数据

blob.png

  • touch:修改文件的时间戳信息

格式:

touch [选项] 文件名,若文件不存在,则直接创建空文件

-c不创建空文件

-a只修改最近访问时间

-m只修改最近更改时间

-t设置时间戳时间

[[CC]YY]MMDDhhmm[.SS],例如:201609242222.22就是2016年9月24日22点22分22秒

命令演示:更改/tmp/centos1/abc的最后更改时间为2016年9月24日22点22分22秒

[root@localhost centos1]# touch -m -t 201609242222.22 /tmp/centos1/abc

blob.png

4、命令别名设置及命令结果引用

  • alias:定义命令别名

例如:alias hs=‘history’

  • unalias:取消命令别名

例如:unalias history

  • $(COMMAND),mkdir $(date +%H-%M-%S)

  • `COMMAND`,mkdir `date +%H-%M-%S`

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

[root@localhost centos1]# ls -d /etc/[0-9]*[^0-9]

blob.png

执行结果说明 /var目录下没有符合条件的文件或目录

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

[root@localhost centos1]# ls -d /etc/[0-9]*[^0-9]

blob.png

7、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件

[root@localhost centos1]# touch /tmp/tfile-$(date +%Y-%m-%d-%H-%M-%S)

blob.png

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

[root@localhost centos1]# mkdir /tmp/mytest1

[root@localhost centos1]# cp -r /etc/p*[^0-9] /tmp/mytest1

blob.png

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

[root@localhost centos1]# mkdir /tmp/mytest2

[root@localhost centos1]# cp -r /etc/*\.d /tmp/mytest2 blob.png

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

[root@localhost centos1]# mkdir /tmp/mytest3

[root@localhost centos1]# cp -r /etc/[lmn]*.conf /tmp/mytest3

blob.png

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

(0)
孙永奎孙永奎
上一篇 2016-09-25
下一篇 2016-09-26

相关推荐

  • Linux硬链接、软链接的介绍及两者的区别

    一、硬链接 链接数就是名字的数量: ln(link) 硬链接,多个相同的inode文件(同分区),多个硬链接文件的存在在硬盘上只占用一个文件的容量 创建的硬链接是平等的,inode相同,删除某一个互不影响,其他文件仍然可以使用 硬链接的本质:给一个文件创建多个名字   创建多个硬链接,观察链接数的变化(+1),链接数是几就是有几个文件名 同一分区中…

    Linux干货 2016-08-04
  • 8.3_Linux习题和作业

    课堂习题 1.当用户xiaoming对/testdir 目录无执行权限时,意味着无法做哪些操作? 答:不能cd进该目录 2.当用户xiaoqiang对/testdir 目录无读权限时,意味着无法做哪些操作? 答:不能查看目录内的文件列表,不能cd,也不能查看目录里面文件的元数据 3.当用户wangcai 对/testdir 目录无写权限时,该目录下的只读文件…

    Linux干货 2016-08-05
  • 第三周课堂练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@myserver ~]# whoami  root  [root@myserver ~]# who | cut -d' ' -…

    Linux干货 2016-09-19
  • 对inode的初步理解

    1.什么是inode?     inode中文译作”索引节点“,是linux操作系统中的一种数据结构,用来存储文件的元数据信息。在linux系统中每个文件都会分配一个inode,我们也可以把inode看作指针,它永远指向文件的具体存储位置。 2.inode中包含了什么信息? * inode 编号 * 用来识别文件类型,以及用于 …

    2017-07-18
  • Linux 第七天: (08月05日) 练习和作业

    Linux 第七天: (08月05日) 练习和作业       1 找出ifconfig命令结果中本机的所有IPv4地址 ifconfig | tr -cs '[0-9].''\n' | sort -ut '.' -k3 -n 或ifconfig | head -2 |…

    Linux干货 2016-08-08
  • 简述计算机网络中的物理层

          简要说明物理层在网络传输中做了哪些工作解决的问题      物理层是计算机网络OSI模型中最低的一层。物理层规定:为传输数据所需要的物理链路创建、维持、拆除,而提供具有机械的,电子的,功能的和规范的特性。简单的说,物理层确保原始的数据比特流可在各种物理媒体上传输。使得…

    Linux干货 2017-05-08

评论列表(1条)

  • luoweiro
    luoweiro 2016-10-10 22:53

    总结的很详细,并且把自己的实验过程总结出来,看起来更加直观,赞。