01 Linux常用命令

目录 

Linux命令分类 

Linux命令行格式

Linux快捷键

常用命令

        通过命令获得帮助

        目录及文件

                创建目录与文件

                复制、删除、移动目录与文件

        查找目录与文件


Linux命令分类

        在学习Linux命令之前,要先了解Shell

        为什么要要先了解Shell呢?因为Linux命令的执行必须依赖于Shell命令解释器。Shell实际上是在Linux操作系统中运行的一种特殊程序,它位于操作系统内核用户之间,负责接收用户输入的命令并进行解释,将需要执行的操作传递给系统内核执行,Shell在用户和内核之间充当了“翻译官”的角色。当用户登录到Linux系统时,会自动加载一个Shell程序,以便给用户提供可以输入命令的操作系统

        

        现在已经知道Shell了,那么就开始了解Linux系统中什么叫做内部命令,什么叫做外部命令,他们之间有着怎么样的区别 

内部命令外部命令

集成与Shell解释器程序内部的一些特殊指令,也称为内建(Built-in)指令

Linux系统中能够完成特定功能的脚本文件或二进制程序

属于Shell的一部分

属于Shell解释器程序之外的命令

没有单独对应的系统文件

每个外部命令对应了系统中的一个文件

自动载入内存,可以直接使用

必须知道其对应的文件位置,由Shell加载后才能执行 

        在Linux操作系统中,会默认将外部命令、程序的目录(如:/bin、/user/bin、/user/local/bin等)添加到用户的“搜索路径”中,当使用位于这些目录中的外部命令时,用户不需要知道具体的位置。因此在大多数情况下,不用可以去分辨内部命令和外部命令,其使用方法是基本类似的

Linux命令行格式

        命令字     [选项]     [参数]

         命令字、选项、参数之间使用空格分开,若是不小心多输入了几个空格,不用在意,多余的空格会被忽视掉。

        []括起来的部分代表可以省略,也就是说,命令行可以只有命令字;也可以只有命令字与选项;也可以只有命令字与参数

        接下来详细讲解一下他们的作用

  1. 命令字

    命令字即命令名称,是整条命令中最关键的一部分。在Linux的字符操作界面中,使用命令字唯一确认一条命令,因此在输入命令时一定要确保输入的命令字正确。并且,在Linux的命令环境中,无论是命令名还是文件名,对英文字符的处理是区分大小写

  2. 选项

    选项的作用是调节命令的具体功能,决定这条命令如何执行。同一个命令配合不同的选项使用时,可以获得相似但具有细微差别的功能

    选项的数量可以是多个,也可以省略

    有些命令字对于同一功能会同时提供长、短两种格式的选项

           长格式:一般在选项前使用“--”符号引导,如“--help”

            短格式:一般在选项前使用“-”符号引导,如“-l”

      3. 参数

          命令参数是命令字的处理对象,通常情况下命令参数可以是文件名、目录(路径)名或用户名等内容。根据命令字的不同,命令参数的个数可以是零到多个

Linux快捷键

在写命令时,有时候会伴随着命令太长不好打,打错之类的问题,这时候就要借助一些快捷键

命令说明
Tab

可以将输入的不完整命令字或文件、目录名自动补齐,该功能只能向后补齐,且必须以输入的部分字符开头,能够唯一定位一个命令字或文件、目录名,否则可按两次Tab键,系统将输出可用的名称列表

反斜杠“\”

如果输入的一行命令内容太长,终端会自动换行。有时候为了显示美观及方便查看,也可以插入“\”符号强制换行,在下一行出现的“>”提示符后可以继续输入内容,作为上一行命令的延续

Ctrl+U

快速删除当前光标之前的所有字符内容

Ctrl+K

快速删除从当前光标处到行尾的所有字符内容

Ctrl+L

快速清空当前屏幕中的显示内容,只在左上角显示命令提示符

Ctrl+C

取消当前命令行的编辑,并切换为新的一行命令提示符

home

将光标移到最前面

end

将光标移到最后面

 常用命令

        获得命令的帮助
  • help

help命令本身是Linux Shell 中的一个内键指令,其用途是查看各Shell内部命令的帮助信息。使用help命令时,只需要添加内部命令的名称作为参数即可

[root@localhost ~]# help pwd
pwd: pwd [-LP]
    打印当前工作目录的名字。
    
    选项:
      -L	打印 $PWD 变量的值,如果它命名了当前的
    	工作目录
      -P	打印当前的物理路径,不带有任何的符号链接
    
    默认情况下,`pwd' 的行为和带 `-L' 选项一致
    
    退出状态:
    除非使用了无效选项或者当前目录不可读,否则
    返回状态为0。
[root@localhost ~]# 

  •  --help

对于大多数Linux外部命令,可以使用一个通用的命令选项“--help”来显示对应命令字的格式及选项等帮助信息。若该命令字没有“--help”选项,一般只会提示简单的命令格式。

[root@localhost ~]# ls --help
用法:ls [选项]... [文件]...
List information about the FILEs (the current directory by default).
Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.

Mandatory arguments to long options are mandatory for short options too.
  -a, --all			不隐藏任何以. 开始的项目
  -A, --almost-all		列出除. 及.. 以外的任何项目
      --author			与-l 同时使用时列出每个文件的作者
  -b, --escape			以八进制溢出序列表示不可打印的字符
      --block-size=SIZE      scale sizes by SIZE before printing them; e.g.,
                               '--block-size=M' prints sizes in units of
                               1,048,576 bytes; see SIZE format below
  -B, --ignore-backups       do not list implied entries ending with ~
  -c                         with -lt: sort by, and show, ctime (time of last
                               modification of file status information);
                               with -l: show ctime and sort by name;
                               otherwise: sort by ctime, newest first
  -C                         list entries by columns
      --color[=WHEN]         colorize the output; WHEN can be 'never', 'auto',
                               or 'always' (the default); more info below
  -d, --directory            list directories themselves, not their contents
  -D, --dired                generate output designed for Emacs' dired mode
  -f                         do not sort, enable -aU, disable -ls --color
  -F, --classify             append indicator (one of */=>@|) to entries
      --file-type            likewise, except do not append '*'
      --format=WORD          across -x, commas -m, horizontal -x, long -l,
                               single-column -1, verbose -l, vertical -C
      --full-time            like -l --time-style=full-iso
  -g				类似-l,但不列出所有者
      --group-directories-first
                             group directories before files;
                               can be augmented with a --sort option, but any
                               use of --sort=none (-U) disables grouping
  -G, --no-group		以一个长列表的形式,不输出组名
  -h, --human-readable		与-l 一起,以易于阅读的格式输出文件大小
				(例如 1K 234M 2G)
      --si			同上面类似,但是使用1000 为基底而非1024
  -H, --dereference-command-line
                             follow symbolic links listed on the command line
      --dereference-command-line-symlink-to-dir
                             follow each command line symbolic link
                               that points to a directory
      --hide=PATTERN         do not list implied entries matching shell PATTERN
                               (overridden by -a or -A)
      --indicator-style=WORD  append indicator with style WORD to entry names:
                               none (default), slash (-p),
                               file-type (--file-type), classify (-F)
  -i, --inode                print the index number of each file
  -I, --ignore=PATTERN       do not list implied entries matching shell PATTERN
  -k, --kibibytes            default to 1024-byte blocks for disk usage
  -l				使用较长格式列出信息
  -L, --dereference		当显示符号链接的文件信息时,显示符号链接所指示
				的对象而并非符号链接本身的信息
  -m				所有项目以逗号分隔,并填满整行行宽
  -n, --numeric-uid-gid		类似 -l,但列出UID 及GID 号
  -N, --literal			输出未经处理的项目名称 (如不特别处理控制字符)
  -o				类似 -l,但不列出有关组的信息
  -p,  --indicator-style=slash	对目录加上表示符号"/"
  -q, --hide-control-chars   print ? instead of nongraphic characters
      --show-control-chars   show nongraphic characters as-is (the default,
                               unless program is 'ls' and output is a terminal)
  -Q, --quote-name           enclose entry names in double quotes
      --quoting-style=WORD   use quoting style WORD for entry names:
                               literal, locale, shell, shell-always, c, escape
  -r, --reverse			逆序排列
  -R, --recursive		递归显示子目录
  -s, --size			以块数形式显示每个文件分配的尺寸
  -S                         sort by file size
      --sort=WORD            sort by WORD instead of name: none (-U), size (-S),
                               time (-t), version (-v), extension (-X)
      --time=WORD            with -l, show time as WORD instead of default
                               modification time: atime or access or use (-u)
                               ctime or status (-c); also use specified time
                               as sort key if --sort=time
      --time-style=STYLE     with -l, show times using style STYLE:
                               full-iso, long-iso, iso, locale, or +FORMAT;
                               FORMAT is interpreted like in 'date'; if FORMAT
                               is FORMAT1<newline>FORMAT2, then FORMAT1 applies
                               to non-recent files and FORMAT2 to recent files;
                               if STYLE is prefixed with 'posix-', STYLE
                               takes effect only outside the POSIX locale
  -t                         sort by modification time, newest first
  -T, --tabsize=COLS         assume tab stops at each COLS instead of 8
  -u                         with -lt: sort by, and show, access time;
                               with -l: show access time and sort by name;
                               otherwise: sort by access time
  -U                         do not sort; list entries in directory order
  -v                         natural sort of (version) numbers within text
  -w, --width=COLS           assume screen width instead of current value
  -x                         list entries by lines instead of by columns
  -X                         sort alphabetically by entry extension
  -1                         list one file per line

SELinux options:

  --lcontext                 Display security context.   Enable -l. Lines
                             will probably be too wide for most displays.
  -Z, --context              Display security context so it fits on most
                             displays.  Displays only mode, user, group,
                             security context and file name.
  --scontext                 Display only security context and file name.
      --help		显示此帮助信息并退出
      --version		显示版本信息并退出

SIZE is an integer and optional unit (example: 10M is 10*1024*1024).  Units
are K, M, G, T, P, E, Z, Y (powers of 1024) or KB, MB, ... (powers of 1000).

使用色彩来区分文件类型的功能已被禁用,默认设置和 --color=never 同时禁用了它。
使用 --color=auto 选项,ls 只在标准输出被连至终端时才生成颜色代码。
LS_COLORS 环境变量可改变此设置,可使用 dircolors 命令来设置。


退出状态:
 0  正常
 1  一般问题 (例如:无法访问子文件夹)
 2  严重问题 (例如:无法使用命令行参数)

GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
请向<http://translationproject.org/team/zh_CN.html> 报告ls 的翻译错误
要获取完整文档,请运行:info coreutils 'ls invocation'
[root@localhost ~]# 
  • man手册

man手册页(Manual Page)是Linux操作系统中最为常见的一种在线帮助形式,绝大部分的外部软件在安装时为执行程序、配置文件提供了详细的帮助手册页。这些手册页中的信息按照特定的格式进行组织,通过统一的手册页浏览程序man进行阅读

FILE(1)                                BSD General Commands Manual                               FILE(1)

NAME
     file — determine file type

SYNOPSIS
     file [-bchiklLNnprsvz0] [--apple] [--mime-encoding] [--mime-type] [-e testname] [-F separator]
          [-f namefile] [-m magicfiles] file ...
     file -C [-m magicfiles]
     file [--help]

DESCRIPTION
     This manual page documents version 5.11 of the file command.

     file tests each argument in an attempt to classify it.  There are three sets of tests, performed in
     this order: filesystem tests, magic tests, and language tests.  The first test that succeeds causes
     the file type to be printed.

     The type printed will usually contain one of the words text (the file contains only printing char‐
     acters and a few common control characters and is probably safe to read on an ASCII terminal),
     executable (the file contains the result of compiling a program in a form understandable to some
     UNIX kernel or another), or data meaning anything else (data is usually “binary” or non-printable).
     Exceptions are well-known file formats (core files, tar archives) that are known to contain binary
     data.  When modifying magic files or the program itself, make sure to preserve these keywords.
     Users depend on knowing that all the readable files in a directory have the word “text” printed.
     Don't do as Berkeley did and change “shell commands text” to “shell script”.

     The filesystem tests are based on examining the return from a stat(2) system call.  The program
     checks to see if the file is empty, or if it's some sort of special file.  Any known file types
     appropriate to the system you are running on (sockets, symbolic links, or named pipes (FIFOs) on
     those systems that implement them) are intuited if they are defined in the system header file
     <sys/stat.h>.

     The magic tests are used to check for files with data in particular fixed formats.  The canonical
     example of this is a binary executable (compiled program) a.out file, whose format is defined in
     <elf.h>, <a.out.h> and possibly <exec.h> in the standard include directory.  These files have a

目录及文件

        创建目录与文件
  • pwd

    pwd命令用于查看当前的工作目录(Print Working Directory)的位置,工作目录是用户操作文件或其他子目录的默认位置起点。使用pwd命令可以不添加任何选项或参数

  • cd

     cd命令用于将用户的工作目录更改到其他位置,通常使用需要切换到的目标位置(文件夹路径)最为参数。若不指定目标位置,默认将切换到当前用户的宿主目录(家目录),宿主目录是Linux用户登录系统后默认的工作目录 

    在Linux操作系统中表示某个目录(或文件)的位置时,根据其参照的起始目录不同,可以使用两种不同的形式,分别称为绝对路径和相对路径

    绝对路径

    这种方式以跟目录“/”最为起点,如“/boot/grub”表示根目录下boot子目录中的grub目录。若要确切表名grub是一个目录(而不是一个文件),可以在最后也加上一个目录分隔符,如表示为“/boot/grub”。因为Linux操作系统中的根目录只有一个,所有不管当前处于哪个目录中,使用绝对路径都可以非常准确地表示一个目录(或文件)的所在位置,但是如果路径较长,输入的时候会比较烦琐

    • 相对路径:这种方式一般以当前目录作为起点,在开头不使用“/”符号,因此使用的时候更加简单、便捷。相对路径主要包括以下几种形式
      1. 直接使用目录名或文件名表示当前目录中的子目录、文件的位置。
        1. eg:“grub.conf”可表示当前目录下的grub.conf文件
      2. 使用一个点号“.”开头明确表示以当前的的工作目录作为起点
        1. eg:“./grun.conf”也可以表示当前目录下的grun.conf文件
      3. 使用两个点号“..”开头表示以当前目录的上一级目录(父目录)作为起点
        1. eg:若当前处于/boot/grun/目录中,则“../vmlinuz”等同于“/boot/vmlinuz”
      4. 使用“~用户名”的形式开头表示以指定用户的宿主目录作为起点,省略用户名时默认为当前用户。
        1. eg:“~teacher”表示teacher用户的宿主目录,而“~”可表示当前用户的宿主目录
  • ls

    ls命令主要用于显示目录中的内容,包括子目录和文件的相关属性信息等。使用的参数可以是目录名,也可以是文件名,允许在同一天命令中出现多个参数        

-l:以长格式(Long)显示文件和目录的列表,包括权限、大小、最后更新时间等详情信息。不使用-l选项时,ls命令默认以短格式显示目录名或文件名信息
-a:显示所有(all)子目录和文件的信息,包括名称以点号“.”开头的隐藏目录和隐藏文件
-A:与-a选项的作用基本类似,但又两个特殊隐藏目录不会显示,即表示当前目录的“.”和表示父目录的“..”
-d:显示目录(Directory)本身的属性,而不是显示目录中的内容
-h:以更人性化(Human)的方式显示目录或文件的大小,默认的大小单位为自己(B),使用-h选项后将显示为KB、MB等单位。此选项需要结合-l选项一起使用
-R:以递归(Recursive)的方式显示知道目录及其子目录中的所有内容
-color:在字符模式中以颜色区分不同的文件,如果使用“--color=tty”,则表示使用终端预定义的颜色方案。通常情况下,深蓝色表示目录,白色表示一般文件,绿色表示可执行的文件,黄色表示设备文件,红色表示压缩文件

ls执行不带任何选项、参数的ls命令,可显示当前目录中包含的子目录、文件列表信息(不包括隐藏目录、文件)
ls-ld只显示当前目录的详细属性,而不显示目录下的内容
  • du

    du命令可用于统计知道目录(或文件)所占用磁盘空间的大小,使用目录或文件的名称作为参数

-a:统计磁盘空间所占用时包括所有的文件,而不仅仅只统计目录
-h:以更人性化的方式(默认以KB计数,但不显示单位)显示出统计结果,使用-h选项后将显示出KB、MB等单位
-s:只统计每个参数所占用空间总的(Summary)大小,而不是统计每个子目录、文件的大小
  •  mkdir命令

    用于创建新的空目录,使用要创建的目录位置作为参数(可以是多个)​​​​​​​

  •  touch命令

    ​​​​​​​创建文件,若文件存在,更新时间戳​​;若文件不存在,则创建一个新的文件​​​​​

  • ln命令 

    用于为文件或目录建立链接文件(类似于Windows系统中的快捷方式),提高用户定位文件或定位目录的效率。

    链接文件分为软链接和硬链接:

    软连接:针对文件、目录、可跨分区

    硬链接:只针对文件,不可跨分区

        复制、删除、移动目录和文件 

  • cp

    cp命令用于复制文件或目录,将需要复制的文件或目录(源)重建一份并保存为新的文件或目录(可保存到其;他目录中)

    cp命令的基本使用格式:

    cp   [选项]...    源文件或目录...     目标文件或目录

    -f:覆盖目标同名文件或目录时不进行提示,而直接强制(Force)复制
    -i:覆盖目标同名文件或目录时提醒用户确认(Interactive,交互式)
    -p:复制时保持(Preserve)源文件的权限、属主及时间标记等属性不变
    -r:复制目录时必须使用此选项,表示递归复制所有文件及子目录
  • rm

    rm命令用于删除指定的文件或目录,在Linux命令行界面中,删除的文件是难以恢复的,因此使用rm命令删除文件时需要格外小心。rm命令使用要删除的文件或目录名最为参数。

-f:删除文件或目录时不进行提醒,而直接强制删除
-i:删除文件或目录时提醒用户确认
-r:删除目录时必须使用此选项,表示递归删除整个目录树(应谨慎使用)
  • mv

    mv命令用于将指定的文件或目录转移位置,如果目标位置与源位置相同,则效果相当于为文件或目录名改名

    mv命令的基本格式:

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

查找目录和文件 

  • which

    which命令用于查找Linux命令程序并心事所在的具体位置,其搜索范围主要由用户的环境变量PATH决定(可以执行“echo $PATH”命令查看),这个范围也是Linux操作系统在执行命令或程序时的默认搜索路径

  • find

    find命令时Linux操作系统中功能非常强大的查找命令,可以根据目标的名称。类型。大小等不同属性进行精细查找。find命令在查找时采用递归的方式,其使用形式相当灵活,也可以相当复杂

    find命令的基本使用格式:

    find   [查找范围]   [查找条件表达式] 

按名称查找:关键字为“-name”,根据目标文件的名称进行查找,允许使用“*”及“?”通配符
按文件大小查找:关键字为“-size”,根据目标文件的大小进行查找,一般使用“+”和“—”号设置超过或小于指定的大小作为查找条件。常用的容量单位包括kB(注意k是小写)、MB、GB
按文件属主查找:关键字为“-user”,根据文件是否属于目标用户进行查找
按文件类型查找:关键之为“-type”,根据文件的类型进行查找,这里的类型指的是成块读取数据的设备(如硬盘、内存等),而字符设备指的是按单个字符读取数据的设备(如键盘、鼠标等)

  • 34
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值