linux常用命令及用法(linux常用命令菜鸟教程),本文通过数据整理汇集了linux常用命令及用法(linux常用命令菜鸟教程)相关信息,下面一起看看。

  本文将为您详细介绍常用的Linux指令、演示和一些基础知识的讲解。

  目录

   Ls文件命令pwd命令whoami命令cd命令相对路径和绝对路径哪个命令touch命令mkdir命令添加用户信任关系rmdir命令rm命令man命令cp命令mv命令edit cat命令echo命令重定向more命令less命令head命令tail命令流水线操作date命令cal命令find命令Grep指令zip指令/unzip指令tar指令bc指令uname指令shutdown指令stat指令三次Linux下的touch指令补充热键Linux-指令列表

   Ls指令

  语法:ls[选项][目录]

  功能:ls有多种选择。对于目录,此命令列出该目录下的所有子目录和文件。对于文件,将列出文件名和其他信息。

   Ls默认显示当前目录中的文件,不带选项。

  选项:

   -l:以列表的形式列出文件细节。

  在Linux系统中,文件类型不是用文件后缀来区分的,而是用第一个字符来标识的。无论文件后缀是否为。c或者。txt或其他后缀,只有以-开头的文件才是普通文件。

   d:目录文件,简称文件夹,我们可以在这个目录下新建文件file-:普通文件,分为文本文件、动态静态库、可执行程序等。l:软链接(类似Windows的快捷方式)B:屏蔽设备文件(如硬盘、光驱等。)P:管道文件C:字符设备文件(如屏幕等串行设备)-s: windows套接字文件。

  今天我们集中讨论前两种类型的文档。

  普通文件可以分为很多类型。为了兼容windows,方便我们大部分linux用户区分文件,我们还是习惯用后缀来表示不同文件的类型。但是,有些文件必须带有后缀,例如。用C语言写的C文件,需要特殊处理以后缀区分类型。

   -a:显示目录中的所有文件都包含隐藏文件,以点开头的表示隐藏文件,其中一个点表示当前路径,两个点表示上一个路径。我们将在下面的光盘说明中解释和。

   -d:像显示文件一样显示目录,但不显示目录中的文件。这里的点表示当前路径。

   -R:列出子目录中的所有文件(递归),将列出目录中的所有文件。

   -n:使用数字的UID和GID,而不是名称

  还有一些其他的选项就不演示了,可以试试。

   -1一行只输出一个文件-r反向排序目录-k以k字节的形式表示文件的大小。Ls -alk指定file -i输出文件的inode的索引信息。例如,ls -ai指定文件-t按时间排序。

  文件指令

  功能:文件类型

  语法:file [file]

   [king VM-12-11-centos ~]$ filecat . txt cat . txt:UTF-8 Unicode Text #是一个文本文件[king VM-12-11-centos ~]$ fileret #是一个目录文件ret: directory

   Pwd命令

  语法:pwd

  功能:显示当前路径

   Whoami指令

  功能:显示当前用户

  两种写作

  光盘指令

  功能:切换路径

  用法:CD[要切换的路径]

   Linux以多树结构管理文件。磁盘上的文件和目录形成一个目录树,每个节点就是一个目录或文件。根目录:/

  相对路径和绝对路径

  当我们需要查找文件时,必须知道文件的路径和文件名,比如查找text.c文件,因为每个节点只有一个父节点,从根目录到text.c文件的路径是唯一的。完整描述文件位置的路径是绝对路径,可以唯一标识一个文件。上面的pwd指令显示了绝对路径。

  相对路径是:我们自己相对于目标位置的路径,不唯一。我们可以从不同的地方找到文件。

  绝对路径:从目录到指定文件的路径,可以唯一标识文件。

  相对路径:从文件到指定文件的路径,不能唯一标识文件。

  命令cd可以通过相对路径和绝对路径切换路径。

  您可以通过绝对路径切换到指定的目录。

  您还可以在相对路径中切换,其中点代表更高级别的路径cd.切换到更高级别的目录,和cd././切换到更高级别的路径。

   [king VM-12-11-centos Linux class]$ pwd/home/king/Linux class[king VM-12-11-centos Linux class]$ CD class code[king VM-12-11-centos class code]$ LSA . outret . txt test . c[king VM-12-11-centos class code]$ CD test[king VM-12-11-centos test]$ CD././p1 #切换到父目录的p1路径[kingvm-12-11-centos p1] $

  有些朋友可能会有疑问。激光唱片.可以切换到下一个更高的路径,那么cd有什么用.我们已经在当前目录中,所以不需要切换。

  这里我们用vim写一个hello Linux代码,通过gcc编译,生成一个a.out的可执行程序运行可执行程序,我们需要路径和文件名,点号可以表示它的路径,比下面的绝对路径方便很多。

   cd又多了两种选择。

   [king VM-12-11-centos Linux class]$ pwd/home/king/linuxclass[king VM-12-11-centos Linux class]$ CD ~ # CD ~进入工作目录,即[king VM-12-11-centos ~]$ pwd/home/king[king VM-12-11-centos ~]$ CD-# CD-返回最后访问的路径/home/king/Linux class。

  哪个指令

  语法:which[指令]

  功能:指令的系统路径和相关信息。

   [king VM-12-11-centos Linux class]$ which ls alias ls= ls-color=auto # alias:alias the instructions/usr/bin/ls #我们的指令都被系统简化了[king VM-12-11-centos Linux class]$ which ll alias ll= ls-l-color=auto # ll可以替换ls-l/usr/bin/ls[king VM-12-11-centos Linux class]$ which CD #同时我们发现指令

  指令本质上是程序。在linux中,指令、命令和工具都是可执行程序,存储在普通文件中。Linux中的一切都是一个文件,我们的指令在bin目录下。

  触摸命令

  功能:新建一个文件,更改一个文件或目录的日期,包括访问时间和更改时间。先了解一下新创建的文件,我们会在文末介绍更改目录的日期。

  注意,touch创建的是普通文件,不是目录文件,所以不能用cd访问。

   [kingvm-12-11-centos测试] $ touchfile1file2file3 # Touch可以连续创建多个文件[kingvm-12-11-centos测试] $ touchfile4 #创建单个文件[kingvm-12-11-centos测试] $ ls file1file2file3file4

   Mkdir指令

  功能:创建一个新的目录文件

   Mkdir还可以同时创建多个目录文件。可以访问cd,但是不能在一个目录文件下创建多个子目录。说明不能在这里创建。

  选项-p:递归创建多个子目录。

  添加用户信任关系

  这里,tree指令以树的形式显示文件,并且需要yum。

   yum intsall树

  如果我们是普通用户,需要在前面加上sudo。sudo可以暂时提升权限,并以root用户身份执行相应的指令。

   Su单独表示切换到root用户,需要输入root用户的密码。

   [retvm-12-11-centos ~] $ su密码:#输入root密码[root VM-12-11-centos ret]# whoami #切换到Root用户Root[Root VM-12-11-centos ret]# Suret # Root用户可以直接切换到指定用户,无需输入用户密码[retVM-12-11-centos ~]$ whoami #现在我们切换到用户ret。

  如果我们的sudo yum install -y树显示类似下面的指令,这意味着当前用户没有添加信任关系。

  为了帮助用户以root身份添加信任关系,我们将我们的身份切换到root并执行以下指令来添加信任关系,然后我们可以sudo。

   echo xxx all=(all)all /etc/sudoers(其中XXX代表用户名)

   Rmdir指令

  功能:删除空目录,即没有存放其他文件的目录。

   P1在这里不是空的,所以不能删除。如果你想使用rm指令。

   Rm指令

  我们一般用rm命令删除文件,但是rmdir有点鸡。

  功能:删除目录或文件。

  选项:

   -f:强制删除-r:以递归方式删除目录及其下的所有文件。

  用R选项删除目录,然后我们的p1/p2/p3就被删除了。

  如果我们想删除目录中的所有文件,而不是删除目录,只需添加通配符*

  记住不要删除根目录。

   Rm -rf/#切记不要用。递归删除根目录可能会使系统干涸。

  人工指令

   linux里面有很多指令。如果我们不记得某个指令的用途,我们可以问那个人。

  选项:

   1是一个普通的命令。

   2是系统调用,如open、write等。(通过这个,至少你可以很容易的找到需要添加什么头文件来调用这个函数)

   3是库函数,比如printf,fread4是特殊文件,即/dev下的各种设备文件。

   5是指文件的格式,比如passwd,会解释这个文件中每个字段的含义。

   6是留给游戏的,由每个游戏自己定义。

   7附件里有一些变量,比如像environ这样的全局变量,这里有解释。

   8是系统管理命令,只能root使用,比如ifconfig。

   9内核程序

  目前先来了解一下1和3。

   Man也需要我们,普通用户加sudo。

   yum install -y手册页

   Man没有选项,默认解释说明。

   [kingVM-12-11-centos文件11]$ man ls

   q退出当前界面

   $ man 3 printff #我们可以打印库函数

   Cp指令

  语法:CP[选项][源文件][目标文件][指定目录]

  功能:复制文件或目录。

  常见选项:

   -f强制复制文件或目录,无论目标文件或目录是否已经存在

   -r递归处理,处理指定目录及其子目录中的文件。

  我们复制文件file11,同时将其命名为file。

  默认情况下复制到当前目录,或者在末尾指定目录。

   Mv指令

  功能:移动或重命名文件。

  用法:mv[选项][源文件][目标文件]

  选项:

   -f: Force force的意思是,如果目标文件已经存在,它将被覆盖而不询问。

   -i:如果目标文件已经存在,将询问您是否覆盖它!

  这里,我们将文件file11移动到文件目录。

  如果mv后跟一个文件名而不是文件名,文件将被重命名。

  例如,将文件file11重命名为change

  计算机辅助教学

  功能:文件内容

  语法:cat[选项][文件]

  选项:

   -b:非空白输出行数。

   -n:对输出的所有行进行编号。

   -s:不输出多个空行。

  回声指令

  函数:将字符串显示到标准输出,即屏幕上,echo默认换行。

  再直接的

  我们能把字符串写入文件吗?

  答案是肯定的。通过重定向,在字符串后添加符号和文件名,您可以将应该在标准输出中显示的字符串写入文件。如果文件不存在,它会自动创建一个文件,这就是输出重定向。

  把应该在屏幕上显示的字符串写入目标文件,输出重定向会清空文件原来的内容,然后重写。

  在撰写本文时,以前的hello Linux几乎被清空了。

  如果要保留之前的内容并写入,需要添加一个重定向符号成为符号。

   cat指令后不添加任何文件,默认情况下,从键盘读取内容并显示在显示器上,即屏幕上。

  以前,cat显示文件的内容是通过输入进行重定向的。

   [king VM-12-11-centos ~]$ cat file #这个符号可以省略AAAAAAABBBBBBCCCC。

  更多说明

  功能:类似于cat,一般用于内容较长的日志和文件。

  选项:

   -n:行号

  问:退出更多

  比如我在这里写一个文件,内容从0-1000行不等。

   count=0;而[$ count-le 1000];do echo“hello $ { count }”;让数数;done cat.txt

   1more会先显示部分内容,按enter继续阅读内容,按Q退出。但是more有个缺点就是只能关小,不能关大,所以我们一般不使用more命令。

  较少指令

  功能:文件的内容,少比多用法更灵活。可以使用[pageup][pagedown]等键的功能来来回回的浏览文件,少了之前不会加载整个文件。

  选项:

   -i:忽略大小写。

   -N:显示行号

   /string:搜索字符串的内容。

  ?字符串:向下搜索字符串的内容。

   n:重复前面的搜索(和/或?相关)

   n:向后重复先前的搜索(和/或?相关)

  问:少退出

   [king VM-12-11-centos ~]$ less cat . txt

  我们输入/3搜索字符3,less会为我们标记字符3的内容。

  还有其他选项可以直接尝试,这里就不演示了。我们就退出少界面q。

  头部指令

  功能:将文件内容的开头显示到标准输出,即在屏幕上,head默认显示前10行,不带参数。

  选项:

   -n行

   [king VM-12-11-centos ~]$ headcat . txt #默认输出的前10行是hello 0 hello 1 hello 2 hello 3 hello 4 hello 5 hello 6 hello 7 hello 8 hello 9[king VM-12-11-centos ~]$ head-n5 cat . txt #指定输出的前五行hello 0 hello 1 hello 2 hello 3 hello 4[king VM-12-11-centos ~]$ head-5cat . txt # n hello 0 hello 1 hello 2 hello 3 hello

  尾部指令

  功能:用于显示指定文件末尾的内容。当我们日志的时候,一定是最新的内容,也就是从末尾开始,tail可以帮助我们获取最新的内容。

  选项:

   -f:循环读取

   -n行号:显示行数。

   Tail-f filename会在屏幕上显示filename中的最后一条内容,并且不仅仅是刷新,还能让你看到最新的文件内容,非常适合日志。

   [king VM-12-11-centos ~]$ Tail cat . txt # Tail显示Hello 991 Hello 992 Hello 993 Hello 994 Hello 995 Hello 996 Hello 997 Hello 998 Hello 999 Hello 1000[king VM-12-11-centos ~]$ Tail-n5cat . txt #指定Hello 996 Hello 997 Hello 998 Hello 999 Hello 1000[king VM-12

  然后我们可以显示文件的头部和尾部。如果我们想在文件中间显示内容呢?

  例如,如果我们想显示第100行到第110行,有两种方法:

  前110行通过重定向写入一个tmp临时文件,然后读取最后10行。但是这种方法需要重新创建文件,而且效率低,不浪费空间。

  答案是肯定的,第二种方式是管道化运营。

  流水线操作

  使用管道时,默认情况下会隐式发生重定向。

   # symbol

  表示将执行结果传递给下一条指令的管道[king VM-12-11-centos ~]$ head-110 cat . txt

   tail-10 hello 100 hello 101 hello 102 hello 103 hello 104 hello 105 hello 106 hello 107 hello 108 hello 109

  日期说明

  格式

   %H:小时(00.23)%M:分钟(00.59)%S:秒(00.61)%X:相当于%H:%M:%S%d:天(01.31)%m:月(01.

   [king VM-12-11-centos ~]$ date # date默认显示CST 2022年1月28日16:55:54[king VM-12-11-centos ~]$ date % s # date % s显示时间戳1643360162[king VM-12-11-centos $ date % F % X #以年、月、日、分钟的格式显示当前时间2022-01-2804: 56: 08 pm

  我们可以加_来表示区别,但不能是空格。这个写法不对。

   Cal指令

  功能:日历

  选项:

   -3显示系统中上月、当月和下月的日历。

   -y显示当前年份的年历。

  默认情况下,Cal显示当月的日历。

   [king VM-12-11-centos ~]$ cal-y 2021 #还可以指定年份来显示2021年的历书。

  更多linux常用命令及用法(linux常用命令菜鸟教程)相关信息请关注本站,本文仅仅做为展示!