Linux系列教程(四)——Linux常用命令之文件和目录处理命令

  从这篇博客开始,我们就正式进入Linux命令的学习。学习命令,首先要跟大家纠正的一点就是,我们不需要记住每一条命令的详细语法格式,学完之后我们只需要知道某个命令能干什么。这样我们在实际应用中,遇到需要实现某个功能,我们脑海只要能想起来适用于某个命令就行,至于详细格式我们可以通过查资料。当我们使用的多了,会不知不觉的记住这些命令,这才是正确的学习方法。Linux命令有很多,如果初学者就想全部记住这些命令的详细格式,会对我们产生很大的学习挫败性,还没记完这些命令,或许你已经丧失了学习Linux的热情了。所以接下来的几篇博客,我会详细讲解Linux常用命令的语法格式以及用法,大家记住大概的用法就行了,到时候不会可以回过头来查询。

1、Linux命令的普遍语法格式

命令格式: 命令 【-选项】【参数】
  例子: ls -la /etc
  说明: ①、个别命令使用不遵循此格式,【】这种符号表示可以省略
      ②、当有多个选项时,可以写在一起
      ③、简化选项(一般用一个-)与完整选项(一般用两个–)
       比如 ls -a 等于 ls --all

Linux系列教程(四)——Linux常用命令之文件和目录处理命令
上面的便是Linux系统中的一般命令格式,基本上所有命令都是遵循这种语法格式(个别命令除外)。

2、目录处理命令

一、显示目录文件命令:ls

①、命令名称:ls
②、英文原意:list
③、命令所在路径:/bin/ls
④、执行权限:所有用户
⑤、功能描述:显示目录文件
⑥、语法: ls 选项【-ald】【文件或目录】
       -a 显示所有文件,包括隐藏文件
        -l 详细信息显示 ,可简写为ll命令,但不是所有版本都支持此命令
       -d 仅显示目录名,而不显示目录下的内容列表
       -h 人性化显示(hommization)
       -i 查看任意一个文件的i节点(类似于身份证唯一信息)
       -t 用文件和目录的更改时间排序;可以用第一个显示的文件判断最近修改的文件
     
  注意:. 开头的文件除非是目录,否则就是隐藏文件
Linux系列教程(四)——Linux常用命令之文件和目录处理命令

二、创建目录命令:mkdir

①、命令名称:mkdir
②、英文原意:make directories
③、命令所在路径:/bin/mkdir
④、执行权限:所有用户
⑤、功能描述:创建新目录
⑥、语法: mkdir 【-p】【目录名】
       -p 递归创建
例子:创建单个目录:mkdir /tmp/vae.txt
   创建多个目录:mkdir /tmp/a.txt /tmp/b.txt
注意:1、创建的目录已经存在, 那么 Linux 会提示我们 Linux 无法创建它。
   2、不带任何参数运行 mkdir 命令会在当前目录下创建目录。
   3、不带上-p,如果新建的文件上级目录不存在则不会执行成功这种说法是错误的。加或者不加上 -p 前面的目录没有得都会依次创建。
   4、创建目录的首要条件是, 在想要创建目录的目标路径下你必须具有访问权限。
Linux系列教程(四)——Linux常用命令之文件和目录处理命令

三、切换目录命令:cd

①、命令名称:cd
②、英文原意:change directory
③、命令所在路径:shell 内置命令
④、执行权限:所有用户
⑤、功能描述:切换目录
⑥、语法: cd【目录名】

例子:切换到指定目录:cd /tmp/vae
   回到上一级目录:cd . .
   还是在当前目录:cd .
   返回上两级目录:cd .. . /. .
   返回进入此目录之前所在的目录:cd -

四、shell内置命令和外部命令的区别

  大家可以看到前面的三个命令,ls命令和mkdir命令都有命令的所在路径,而cd命令我们说是shell内置命令。这两者便是Linux内置命令和外部命令。

  内部命令实际上是shell程序的一部分,其中包含的是一些比较简单的linux系统命令,这些命令由shell程序识别并在shell程序内部完成运行,通常在linux系统加载运行时shell就被加载并驻留在系统内存中。内部命令是写在bashy源码里面的,其执行速度比外部命令快,因为解析内部命令shell不需要创建子进程。比如:exit,history,cd,echo等。

  外部命令是linux系统中的实用程序部分,因为实用程序的功能通常都比较强大,所以其包含的程序量也会很大,在系统加载时并不随系统一起被加载到内存中,而是在需要时才将其调用内存。通常外部命令的实体并不包含在shell中,但是其命令执行过程是由shell程序控制的。shell程序管理外部命令执行的路径查找、加载存放,并控制命令的执行。外部命令是在bash之外额外安装的,通常放在/bin,/usr/bin,/sbin,/usr/sbin…等等。可通过“echo $PATH”命令查看外部命令的存储路径,比如:ls、vi等。

  用type命令可以分辨内部命令与外部命令:
   Linux系列教程(四)——Linux常用命令之文件和目录处理命令
  内部命令和外部命令最大的区别之处就是性能。内部命令由于构建在shell中而不必创建多余的进程,要比外部命令执行快得多。因此和执行更大的脚本道理一样,执行包含很多外部命令的脚本会损害脚本的性能。

五、显示当前目录命令:pwd

①、命令名称:pwd
②、英文原意:print working directory
③、命令所在路径:/bin/pwd
④、执行权限:所有用户
⑤、功能描述:显示当前目录
⑥、语法: pwd
例子:显示当前目录:pwd
Linux系列教程(四)——Linux常用命令之文件和目录处理命令

六、复制文件或目录命令:cp

①、命令名称:cp
②、英文原意:copy
③、命令所在路径:/bin/cp
④、执行权限:所有用户
⑤、功能描述:复制文件或目录
⑥、语法: cp -rp 【原文件或目录】【目标目录】
        -r 复制目录
        -p 保留文件属性

例子:比如我们将 root 目录下的install.log 文件复制到 tmp 目录下