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

【Linux探索学习】第二弹——Linux的基础指令(中)——夯实基础第二篇

Linux基础指令(上):【Linux探索学习】第一弹——Linux的基本指令(上)——开启Linux学习第一篇-CSDN博客

前言:

在前面我们已经讲解了一些常用的Linux的基础指令,那些当然是远远不够的,今天我们就继续Linux基础指令的学习

目录

一、man指令

二、echo指令和cat指令

三、cp指令

四、mv指令

五、which指令

六、alias指令

七、总结


在讲解今天内容之前,我们先来看一下上篇的内容,如果有还没掌握的请先返回上篇,循序渐进

下面正式开始今天内容的讲解:

一、man指令

Linux中的指令选项是有很多的,我们很难将它们全部记住,当我们遇到拿不准使用什么命令参数时,我们就可以去查看Linux的联动手册,访问的方式就是通过man指令

man指令语法:man 选项 命令

我们可以先来看一下man指令不带选项的最简单的用法,比如我们查看ls指令的所有用法:

执行此命令后我们就可以看到Linux联动手册中ls的全部参数及用法了(图中只是截取了部分)

在我们看完后,按q键,就可以退出

可能会有人说,对man指令也很陌生,所以我们也可以用man指令去查它自己

执行这个命令后我们可以看到这样的几行文字:

前面的序号对应着Linux联动手册中的章节号,也就是Linux手册中的内容是分章节的,不同的内容存在不同的章节中,下面我们来看一下上面几行所对应的中文:

1  是普通的命令
2  是系统调用,open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要        加什么头文件)
3  是库函数,printf,fread4是特殊文件,也就是/dev下的各种设备文件
5  是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义
6  是给游戏留的,由各个游戏自己定义
7  是附件还有一些变量,比如向environ这种全局变量在这里就有说明
8  是系统管理用的命令,这些命令只能由root使用,ifconfig
当我们查不同的内容时,尽量带上它们所对应的编号,比如当我们想查C语言中的printf,它所对应 的就是3中的库函数,所以我们需要这样:

切记要带上这个3,如果不带上3我们查的就不是C语言中的库函数了,而是普通命令中的printf,因为我们在查找一个命令时,Linux手册默认的是从上到下查找,所以就是先1,再2,再......如果一个指令,就比如printf,在第一章中有,那么就找到它,而不是第三章中C语言中的printf,所以要加上章节号

二、echo指令和cat指令

echo指令的作用是将内容写入文件中,这里的文件即包括显示屏,也包括普通的文本文件

向屏幕中写入内容的操作:

向普通文件中写入内容的操作:

这里我们要了解一个概念,其实我们键盘输入的内容被打印到文件中而不是显示器中,这样的操作叫输出重定向,上面第二个输出方式就叫做输出重定向

同时我们还要知道的是,在我们向一个文件中写入内容时,比如上文中的test.txt文件,如果其中原来是有内容的,在我们写入新的内容后,原来的内容会被覆盖所以有些时候我们想删除文件中的内容时,也可以采用“>文件名”的操作方式,那我们如何不覆盖原文件中的内容,直接追加到后面呢?实现这个功能我们需要的是 追加重定向:>>

或许有人会对上面的cat疑惑,下面我们来讲一下cat指令:

cat指令的作用就是查看目标文件中的内容,除了上面最基础的用法外,还有以下选项:

-b  对非空输出行编号

-n  对输出的所有行编号

-s  不输出多行空行

cat后面什么也不跟时,默认从键盘中读取,如果后面跟了文件名之类时,就不是从键盘中读取了,这种方式叫做输入重定向

三、cp指令

cp指令的作用就是复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录, 则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存 在的目录,则会出现错误信息

在我们用户层面上,同一个目录下是不能有重名的文件的,如果同一个目录 下有重名的文件,就会丧失文件的唯一性,我们就根据文件路径查找,所以当我们对一个文件进行拷贝时,如果是拷贝在同一目录下,切记不要重名,如果是在不同目录下可以重名

同一目录下的拷贝:

拷贝后我们可以发现此目录下多了一个拷贝文件,并且文件中内容与被拷贝文件一致

不同目录下的拷贝:

在这个拷贝操作中,我们将test.txt文件拷贝到目录dir1中,属于不同目录下的拷贝,所以就可以重名

cp指令也有几个比较重要的选项:

-f   --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
-i   --interactive 覆盖文件之前先询问用户
-r  递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录       或符号链 接,则一律视为普通文件处理
-R   --recursive递归处理,将指定目录下的文件及子目录一并处理
我们重点讲解一下其中的-r选项:
-r选项就是递归处理的意思,在前面我们也学了一些其它指令,比如mkdir,rm等指令,也都是递归处理的意思,这里的cp -r的作用也就是递归复制,比如一个目录d1,它的下面还有目录d2或者文件d3,这个时候就需要使用-r选项递归复制

四、mv指令

mv指令有两个作用,一个是剪切,一个是重命名,下面我们可以看一下书上对这个指令功能的讲解:
1. mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的
目录中。
2. 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它
将所给的源文件或目录重命名为给定的目标文件名。
3. 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至
目标目录中。
下面我们来讲解一下mv指令这两个功能的区别和使用方式:
重命名:
重命名操作一般是将文件放在相同目录下的,也就是说第二个参数是同目录下一个不存在的文件名
比如这样,我们就把test.txt文件的名字改成tmp.txt,mv指令的第二个参数是相同目录下的文件名
剪切:
剪切操作是将目标文件换一个路径,比如换到其它目录下,第二个参数是其他路径
如图,我们就将tmp.txt文件剪切到同级的dir1文件中去了
剪切+重命名:
其实上面两种功能是可以结合起来的,而且其实所有的操作,都是可以看作是剪切+重命名,比如我们上面讲的重命名,它也可以看作是一个文件先剪切到同级文件,再进行重命名
而重命名则可以看作一个文件剪切到其它目录,然后再命相同的名字

五、which指令

which指令的作用就是帮助我们找到指令所在的位置,如下:

六、alias指令

alias指令的功能是给指令进行重命名,这个指令是非常有意思的,比如下面的操作:

我们将 ls -l指令 重命名成指令1,此时我们就可以发现 “指令1” 与 ls- l指令 有了同样的效果
但有一点需要我们注意的是,重命名只是临时的,在我们断开云服务器时就会结束

七、总结

以上就是今天Linux基础指令的内容,结合上篇,我们也讲了有十几个基础指令了,还有几个基础指令我们留在下一章讲
感谢各位大佬观看,创作不易,还请各位大佬点赞支持!!!

http://www.kler.cn/a/327069.html

相关文章:

  • 论文概览 |《IJGIS》2024.09 Vol.38 issue9
  • 一二三应用开发平台自定义查询设计与实现系列3——通用化重构
  • 建立maven项目常见问题解决办法
  • 【网络安全】开发中存在的重定向与Referer问题
  • C# 日志框架 NLog、log4net 和 Serilog对比
  • 从0开始本地部署大模型
  • 25考研咨询周开启,西安电子科技大学是否改考408??
  • HarmonyOS Next系列之水波纹动画特效实现(十三)
  • ClickHouse入库时间与实际相差8小时问题
  • 升级FreeBSD13.2到14.1-RELEASE
  • 树和二叉树知识点大全及相关题目练习【数据结构】
  • golang 获取证书的生效及过期时间
  • 【论文笔记】Flamingo: a Visual Language Model for Few-Shot Learning
  • Redis篇(应用案例 - 附近商户)(持续更新迭代)
  • Pgsql 数据库操作
  • 【运动控制】关于GPIO通用输入口是NPN型数字输入
  • Grafana指标汉化
  • 【测试-BUG篇】软件测试的BUG知识你了解多少呢?
  • 自动驾驶系列—DOW(开门预警):让每一次开门都更安心
  • 水囊在消防灭火工作中的作用
  • 机器人的性能指标
  • C++ | Leetcode C++题解之第448题找到所有数组中消失的数字
  • 使用 pypdf 给 PDF 添加目录书签
  • 如何避免IP污染
  • POST与GET有哪些区别?
  • Xcode手动安装SDK模拟器