一、Linux命令分类及格式
Linux命令大体上可以分为两类,一是内部命令,另一类是外部命令。
内部命令:指的是集成与Shell解释器程序内部的一些特殊指令,也称为内建指令。内部命令属于Shell的一部分,所以并没有单独对应的系统文件,只要Shell解释器程序被运行,内部指令也就自动载入内存了,用户可直接使用。内部命令无需从硬盘中读取文件,因此执行效率较高。
外部命令:指的是Linux系统中能够完成特定功能的脚本文件或二进制程序,每个外部命令对应了系统中的一个文件,是属于Shell解释器程序之外的命令,所以称为外部命令。Linux系统必须知道外部命令对应的文件位置,才能够由Shell加载并完成。
Linux命令行的格式
命令字:命令字即命令名称,是整条命令中最关键的的一部分。
选项:选项的作用是调节命令的具体功能,决定这条命令如何执行。
参数:命令参数是命令字的处理对象,通常情况下命令参数文件名、目录名或用户名等内容。
其中,命令字、选项、参数之间用空格隔开,多余的空格将被忽略。其中命令行中的选项和参数在某些情况下是可以省略的,即命令行可以只有命令字,也可以只有命令字、选项,或者只有命令字、参数。
二、目录和文件基本操作的命令
1、查看或文件基本属性
ls命令:ls命令主要用于显示目录中的内容,包括子目录和文件的相关属性信息等。使用的参数可以是目录名,也可以是文件名,允许在同一条命令中使用多个参数。
ls命令中的常用选项
-l:以长格式显示目录和文件的列表,包括权限、大小、最后最后更新时间等详细信息。
-a:显示所有子目录和文件的信息,包括名称以点号“.”开头的隐藏目录和隐藏文件。
-A:与-a相类似,但是-A有两个特殊隐藏目录不会显示出来,即表示当前目录的“.”和表示父目录的“.”。
-d:显示目录本身的属性而不显示内容。
-h:以更人性化的方式显示出目录或文件大小,默认的大小单位为字节,使用该选项后将显示KB、MB等单位。此选项需要与-l选项结合一起使用。
-R:以递归的方式显示指定的目录及其子目录中的所有内容。
例如,以下操作以递归方式显示目录bdqn及其子目录的所有内容。
du命令:du命令可用于统计指定目所占用磁盘空间的大小。使用目录或文件的名称作为参数。
du命令常用的选项
-a:统计磁盘空间占用时包括所有文件,而不仅仅只统计目录。
-h:以更人性化的方式显示出统计结果,默认以KB为单位,但不显示单位,使用-h后将显示出K、M等单位。
-s:只统计每个参数所占用空间的总大小,而不是统计每个子目录、文件的大小。
选项的结合使用
如果需要统计一个文件夹内所有文件总共占用的空间大小,可以结合-sh选项,将要统计的目录作为参数。
如果需要分别统计出多个文件所占用的花间大小,可以结合-ah选项,使目录作为参数时,最后将列出该目录总共占用的大小。
统计/bdqn目录中所有文件、子目录各自占用空间的大小。
2、创建目录和文件
touch命令
touch命令本来用于更新文件的时间标记,但在实际使用中常用于创建新的测试文件,使用文件名作为参数,可以同时创建多个文件。
在yjs中创造两个空文件夹,文件名分别为aaa.html、ccc.txt。
mkdir命令
mkdir命令用于创建新的空目录,使用要创建的目录位置作为参数。如果与选项-p结合一起使用,就可以一次性创建嵌套的多层目录。
创建一个/bdqn,并在/bdqn目录下创建子目录kgc,再在子目录/bdqn/kgc目录下面创建子目录yjs。
3、复制、删除、移动目录和文件
cp命令
cp命令用于复制文件或目录,将所需要复制的文件或目录重建一份并保存为新的文件或目录。
cp命令的常用选项
-f:覆盖目标同名文件或目录时不进行提醒,而直接强制复制。
-i:覆盖目标同名文件或目录时提醒用户确定。
-p:复制时保持源文件的权限、属主及时间标记等属性不变。
-r:复制目录时必须使用此选项,表示递归复制所有文件及子目录。