当前位置: 首页 > news >正文

【Linux系统】快速入门一些常用的基础指令

在这里插入图片描述
各位大佬好,我是落羽!一个坚持不断学习进步的学生。
如果您觉得我的文章还不错,欢迎多多互三分享交流,一起学习进步!

也欢迎关注我的blog主页: 落羽的落羽

文章目录

  • pwd、whoami、clear
  • mkdir、touch、tree
  • cd
  • ls
  • rmdir、rm
  • man
  • echo
  • cat、tac、more、less、head、tail
  • cp、mv
  • find、which、whereis
  • alias
  • grep
  • zip、unzip、tar
  • uname

开始学习使用Linux,我们首先要掌握一些Linux的基础指令。在我们常用的Windows系统中,各种基础功能大多是靠鼠标、键盘完成的,这是Windows提供的指令利用硬件来完成的相应操作。而Linux中,我们要学会一些基本的指令语句:

pwd、whoami、clear

计算机中的数据存储,无非可以认为只有两种方式:文件和文件夹。可以认为文件是存储的最小单元,文件夹中可以存文件,也可以有其他文件夹,也可以为空。我们也可以称文件夹为目录。Linux的这整个文件系统,是一种树形结构!既然是树,就有根,Linux中根目录名为/。由于树形结构的特点,文件的唯一性是通过路径标识的。无论是Linux还是Windows,登录后都会处在一个默认的路径下,Windows是桌面文件夹,Linux中通过pwd指令查看。

  • pwd指令,功能是显示用户当前所在的目录
    打开我们的XShell,进入机器,连接到云服务器后,输入pwd,回车,就能看到:
    在这里插入图片描述
    这就表明我当前所在的目录是/root。

  • whoami指令,功能是显示当前登录的用户,输入whoami,回车:
    在这里插入图片描述
    表明我现在是root账号登录的。

  • clear指令:清空当前屏幕。
    很简单,写了满满一屏幕指令后,可以用clear清屏:
    在这里插入图片描述

mkdir、touch、tree

  • mkdir指令,用来创建目录,可以一次创建一个目录,也可以通过选项-p一次创建一串目录:
    语法:

    • mkdir a,在当前目录下创建一个目录a。
    • mkdir -p a/b/c/d,在当前目录下创建一串目录a、b、c、d,它们的结构是当前目录包含目录a,目录a包含目录b,目录b包含目录c,目录c包含目录d。
  • touch指令,用来创建文件或修改文件信息:
    最简单的用法,touch后加新建的文件名:

    • touch test.c,在当前目录下创建一个test.c文件

举例,如果输入以下指令:
在这里插入图片描述

显然,当前/root路径下是这样的树形结构:
在这里插入图片描述

这个图像是用tree指令生成的,tree指令需要额外下载:我们使用的是CentOS版本系统,输入指令yum install -y tree,系统就会自动下载了(不同的系统下载指令可能不一样)。稍等几秒,显示complete后就下载好了,我们就可以使用tree指令了:

  • tree指令,显示出以当前所处路径为根的树形结构。
  • tree 指定路径指令,显示出以指定路径为根的树形结构(路径指定方式有两种,见下文)。

我们当前还处在/root目录下,所以使用tree指令,就得到了上图:
在这里插入图片描述
(可以看到它还能显式出当前结构中有几个文件夹和几个文件,后面我们都以这个文件结构举例子

除此之外,还可以使用tree a,显示出以a目录为根的树形结构:
在这里插入图片描述

还可以使用tree dir1,显示出以dir1目录为根的树形结构,当然dir1是空目录,什么都没有:
在这里插入图片描述

刚才还提到过,整个Linux系统的文件结构的根目录名是/,所以我们可以试试tree /指令,由于系统中还有很多其他内部文件,屏幕上就会刷新很长时间文件信息。可以用ctrl c快捷键,中断指令执行的过程。

cd

我们创建了不同的目录,肯定需要进去再进去别的操作。cd的功能就是进入指定的路径。指定路径有两种方式:绝对路径和相对路径。

  • 绝对路径指定:用cd 绝对路径名,即可进入指定的路径:
    在这里插入图片描述

  • 相对路径指定:相对于当前所处的目录,指定目录。通过...完成,..指上级路径,.指本身所在路径。.的主要作用是找到当前路径下的可执行程序并执行。此时我们主要使用..和路径分隔符/,比如我现在在a目录下,想进入上一层目录/root,用绝对路径表示是cd /root,用相对路径表示是cd ..;我在a目录下,想进入上一层目录/root的子目录dir1,用绝对路径表示是cd /root/dir1,用相对路径表示是cd ../dir1
    在这里插入图片描述

  • 除此之外,如果只是想去当前目录下的子目录,可以直接使用cd 目录名,这种写法对跨层次或逆层次的进入不起作用:
    在这里插入图片描述

绝对路径一般不会随着用户的路径变化失去唯一性,一般在特定服务的配置文件中经常被使用。而相对路径可能会随着用户的路径变化失效,但由于它的便携性,一般在命令行中使用比较多。

cd指令还有一种选项用法:cd -指令,可以回到上一次所处的路径。连续使用cd -,就会在两个路径见反复横跳:

在这里插入图片描述

ls

ls指令用来罗列指定目录下的内容。

ls,直接罗列出当前目录下的文件名和文件夹名:
在这里插入图片描述

一个文件或文件夹通常由内容和属性组成,就算内容是空的,也一定有属性,如名字、创建时间、类型、修改时间、内容大小等等。上面的ls指令仅仅列出文件和文件夹名字,而ls -l可以列出它们的详细信息
在这里插入图片描述
前面的还看不懂没事,知道每一行是一个文件或文件夹的详细信息就好。

但是,Linux系统中还可以存在隐藏文件(夹),一般以.开头。隐藏文件(夹)大多是不想被修改,因此直接隐藏起来的文件(夹)。想要把这些隐藏的内容也列出来,使用ls -a指令:
在这里插入图片描述

-a-l都是ls指令的选项,选项间可以组合使用,写成ls -al 或 ls -la 或 ls -a -l都是一样的效果。这个指令功能不言而喻,就是把当前目录下的所有文件和文件夹包括隐藏文件,并把它们的详细信息都列出来:在这里插入图片描述

值得注意的是,每一个目录,都有两个隐藏文件夹,名字就是...。实际上,.就是自己当前目录,..就是上一级目录。刚才说的相对路径中的...就是这么来的。

除此之外,ls也可以指定目录罗列其下的内容,也可以搭配-a和-l等选项使用,指定目录写在选项后:
在这里插入图片描述

rmdir、rm

学了新建目录和文件,当然也要学会删除。

  • rmdir是与mkdir相对的指令,用于删除空目录
    在这里插入图片描述

rmdir有一个选项-p。rmdir -p dir,会删除空目录dir,并且如果子目录删除后父目录也空了,父目录也删除。循环直至某一个目录不为空或到当前所处路径:
在这里插入图片描述

  • rm相对更泛用,能删除文件或目录。

在这里插入图片描述

一般情况下,为了安全考虑,系统还会询问一次是否要删除,输入y为是,输入n为否。如果不想让系统提醒,果断删除,就加上-f选项,可以强制删除
在这里插入图片描述

只是这样,一次只能删除一项。我们可以使用-r选项,删除指定目录及其下所有文件
在这里插入图片描述
这样删除,也会一次次询问。所以,最强硬的删除方式就是rm -rf 指定目录了,一口气通通删掉。当然,风险也相当大,Linux中删除文件可是无法恢复的。
Linux系统的根目录是/,如果写下rm -rf /,后果可就不堪设想了!

man

Linux的命令有很多参数,不可能全记住,man就是Linux自带的一个联机手册,可以查询获取帮助。语法是man 选项 想要查询的命令
在这里插入图片描述
在这里插入图片描述

常用选项有:

  • -k(根据关键字进行联机查找)
  • num(只在第num章节查找)
  • -a(在所有章节中搜索,直到所有章节都搜索完毕)

man手册中分为9个章节(不同系统可能有差别),里面是不同的内容,我们只需知道前三个:

  • 1 是 普通的命令(最常用,如 ls、cp、man 本身)
  • 2 是 系统调用(内核提供的函数,如 open、fork)
  • 3 是 库函数(C标准库等的函数,如 printf、strcpy)

我们也可以通过man man指令查询到这些内容:在这里插入图片描述

echo

echo命令,作用是将文本写入文件

  • 第一个用法是echo 文本 > 文件名,叫做输出重定向。
  • 不写> 文件名时,默认是输入到显示器文件中,也就是我们的屏幕上:在这里插入图片描述
  • 输出重定向的规则是:目标文件若不存在则创建后写入,若已存在则先清空原有内容再写入。我们也可以反向利用这一点,echo > 文件名便可以清空指定文件
  • 第二个用法是echo 文本 >> 文件名,叫做追加重定向,不会清空文件原有内容,而是在后面续写。

cat、tac、more、less、head、tail

cat命令,作用是查看文件中的内容。语法是cat 选项 文件名
常用选项有:-b(对非空输出行编号)、-n(对所有的输出行编号)、-s(遇到连续的多行空行时,只输出一行空行)在这里插入图片描述

tac命令,和cat命令相反,它是从文件结尾倒着查看文件内容,具体使用方法和cat几乎一样。

在这里插入图片描述

cat命令主要用于查看小文件,查看大文件时会刷屏。
more指令类似于cat,一次只会显示固定行数文本,常用选项有-n(指定输出行数),按回车键不断往下翻查看后面的内容。

还有一个less指令,算是Linux下正统查看文件内容的工具,相比more只能往后面翻,less能往前面和往后面翻。它还有查找指定内容的功能。它的常用选项有:

  • -i,忽略搜索时的大小写
  • -N,显示每行的行号
  • /字符串,向下搜索指定字符串
  • ?字符串,向上搜索指定字符串

再来认识一下head与tail指令。顾名思义,head可以显示开头几行的文本,tail可以显示结尾几行的文本。它们的选项 -n 用来规定查看几行,默认是查看10行。
Linux命令行中有一种叫“管道”的用法,|符号,可以连接不同的命令,组合使用。在这里,我们也可以组合使用head和tail,比如:
有一个1000行的文件test.txt,我们想查看200到210行的内容,就可以写下命令head -210 test.txt | tail -10,意思是先找test.txt中的前210行,再找其后10行,就是200~210行了。

cp、mv

cp指令的功能是复制文件或目录
语法:cp 选项 源文件或目录 目标文件或目录
如果想复制一个不为空的目录,它的内容也想一并复制,需要加选项 -r 进行递归处理。想要强制复制,用 -f 选项。
也可以选择复制文件覆盖另一个已存在文件,加选项 -i 会在覆盖文件前询问用户。

举个栗子,我现在有如下结构:
在这里插入图片描述

将test.c拷贝一份到b目录下;
在这里插入图片描述

再演示复制目录及其内容:
在这里插入图片描述

既然cp命令是复制,当然也有剪切命令了,就是mv。
mv用来移动文件或将文件改名,语法是mv 选项 源文件或目录 目标文件或目录

  • 当第二个参数是目标目录时,该文件会移动到这个目录下。在这里插入图片描述

  • 当第二个参数是目标文件时,该文件会改名为这个目标文件名。在这里插入图片描述

  • 当第二个参数是已存在的目录时,源文件或目录可以有多个,这些源文件和目录都会被移动到目标目录中。在这里插入图片描述

find、which、whereis

Linux下的find命令用于在目录结构中搜索文件,并执行指定的操作。find命令中有许多的选项,功能十分丰富。
语法是find 目录名 选项,常用选项有 -name ,后写文件名,是按照指定文件名查找文件。查找时会在指定目录下寻找:

在这里插入图片描述

值得注意的是,Linux下一切皆文件,命令也不例外,大部分Linux命令的本质就是可执行文件,存放在一个固定的位置,也可以通过find查询到:/usr/bin路径下,是Linux的固定目录。

在这里插入图片描述

which命令,就是用于搜索系统指定的命令位置,which XXX它就相当于find /usr/bin -name XXX

在这里插入图片描述

whereis命令,则用于查找程序的源文件、二进制文件或手册:

在这里插入图片描述

alias

alias指令用于设置命令的别名,这个新起的别名是内存级别的,并不会真实存储,如果退出机器或启动新的终端,是无法使用别名的。
使用语法是alias 别名='命令'(命令中可以带选项)

在这里插入图片描述
在这里插入图片描述

grep

gerp指令是文本过滤器,用于在文件中搜索字符串,将找到的行打印出来。语法是grep 选项 要搜寻的字符串 文件常用选项有:

  • -i,搜索时忽略字符大小写的不同,大小写视为相同
  • -n,同时输出行号
  • -v,反向选择,即显示出没有要搜索的字符串的其他内容

在这里插入图片描述

zip、unzip、tar

这三个命令与文件的压缩与解压缩有关

zip命令用于将目录或文件压缩成.zip格式,语法是zip 选项 压缩文件.zip 目录或文件,常用选项是-r,用于递归处理,压缩目录时必须加-r
unzip命令用于解压缩zip格式的压缩包,语法是unzip 压缩文件.zip 选项 目录,不加选项和指定目录时,默认解压到当前目录下。选项 -d 用于指定解压到的目录。

tar指令既能用于打包,也能用于解包,作用在. tgz 或 .gz 格式的压缩文件。语法是tar 选项 文件与目录 ...。常用选项有:

  • -c,表示要建立一个压缩文件
  • -x,表示要解开一个压缩文件
  • -z,检查是否需要用 gzip 压缩
  • -f,指定归档文件的名称,使用这个选项必须紧跟在 -f 后面接文件名。
  • -C,解压到指定目录,这个选项写在压缩文件名后,后接要解压到的目录。

uname

uname指令用于获取电脑和操作系统的相关信息。常用选项有 -a(详细输出所有信息)

在这里插入图片描述

另外,补充两个查看操作系统版本的命令:

lsb_release -a
cat /etc/os-release

在这里插入图片描述

本篇完,感谢阅读。

http://www.dtcms.com/a/434266.html

相关文章:

  • AI自动化测试:接口测试全流程自动化的实现方法——从需求到落地的全链路实践
  • 打开网站建设中是什么意思表白网站制作代码
  • 【MySQL】MVCC:从核心原理到幻读解决方案
  • Unity游戏基础-4(人物移动、相机移动、UI事件处理 代码详解)
  • 神经网络中优化器的作用
  • 电子商务网站建设的流程图什么是软文
  • 【代码管理】git使用指南(新手向)
  • 【大模型】Agent之:从Prompt到Context的演进之路
  • Docker 搭建 Nginx 并启用 HTTPS 具体部署流程
  • 【代码随想录day 34】 力扣 62.不同路径
  • 点击app图标进入网站怎么做小程序软件开发制作
  • 【Rust GUI开发入门】编写一个本地音乐播放器(15. 记录运行日志)
  • Rust模式匹配详解
  • 石家庄做网站建设公司安徽省建设厅网站职称申报
  • gitlab-runner 再次实践中理解和学习
  • C++之stack等容器适配器(上)实战篇
  • JavaWeb零基础学习Day1——HTMLCSS
  • Starting again-01
  • 如何做网站链接使用朝阳seo建站
  • Nivo 用React打造精美数据可视化的开源利器
  • 【iOS安全】iPhone X iOS 16.7.11 (20H360) Palera1n MacOS版 越狱教程
  • 【连载4】数据库热点更新场景调优策略
  • 深入解析HarmonyOS ArkTS:从语法特性到实战应用
  • 小杰深度学习(five)——正则化、神经网络的过拟合解决方案
  • 网页网站开发大概多少钱网站设计公司 深圳龙华
  • 门户网站是什么意思?网站建设哈尔滨app开发2
  • 《吃透 C++ vector:从基础使用到核心接口实战指南》
  • wordpress上传到哪里什么网站利于优化
  • [Web网页] 零基础入门 HTML
  • Nimble:让SwiftObjective-C测试变得更优雅的匹配库