【Linux】从零开始学习Linux基本指令(二)

🚩纸上得来终觉浅, 绝知此事要躬行。
🌟主页:June-Frost
🚀专栏:Linux入门

🔥该文章主要了解Linux操作系统下的基本指令。
⚡️上一篇可以看这里 👉【Linux】从零开始学习Linux基本指令(一) 了解更多。

目录:

  • ⌛️ 一些常见指令
    • ✉️ man指令
    • ✉️ cp指令
    • ✉️ mv指令
    • ✉️ which指令
    • ✉️ 文件查看
  • ❤️ 结语

⌛️ 一些常见指令

✉️ man指令

  • 语法:man [选项] [命令]
    功能:可以访问Linux手册页,查看Linux中的指令帮助、配置文件帮助和编程帮助等信息。

 通过man指令,可以查看特定命令、函数、设备文件等的详细说明和用法,例如:查找ls指令,输入man ls 后,会出现下面的界面,这个界面介绍了ls的功能,选项等一系列信息。

输入q就可以退出该界面。

📘 注意:输入man man 就可以向在线手册查询man指令。

 可以发现在手册页中有9种手册,简单了解一下:

  • 可执行程序或shell命令(Executable programs or shell commands) :提供了关于Linux系统中可执行程序和shell命令的说明和用法,包括它们的名称、功能、参数、选项、示例等。这些手册页通常包括标准命令、shell内置命令、shell特殊字符、shell选项等。
  • 系统调用(System Calls) : 列出了Linux系统提供的系统调用,以及它们的函数原型、参数、返回值和功能描述。
  • 库调用(Library Call) :提供了C语言标准库中各种函数的详细说明和用法。
  • 设备文件(Special Files) :列出了Linux系统中的特殊文件,包括设备文件、管道文件、套接字文件等,以及它们的使用方式和命令。
  • 文件格式(File Formats) : 提供了关于Linux系统中常见文件格式的说明和解释,例如配置文件、日志文件、备份文件等。
  • 游戏(Games):提供了Linux系统中的各种游戏和娱乐软件的使用说明和指南。
  • 杂项(Miscellaneous) :提供了Linux系统中一些其他工具和功能的说明和用法,例如文本编辑器、网络工具、备份工具等。
  • 管理员命令(System Administrative Commands) : 提供了Linux系统中管理员需要使用的命令的说明和用法,包括系统管理命令、用户管理命令等。
  • 内核例程(Kernel routines) : 提供了关于Linux内核内部结构和机制的说明和解释,包括进程管理、内存管理、文件系统等。

 在Linux系统中,man命令默认使用的手册是第1号手册,如果用户输入的命令在1号手册中找不到,man命令会自动查找其他手册页,直到找到相关手册或显示“未找到任何相关页面”的错误信息。
 所以,我们无需指定使用哪个手册页,除非要查看特定手册页。例如要查找printfprintf在Linxu中也是一个指令,如果我们以man printf 查找,就会展示一号手册的内容,如果我们想查找C语言的printf函数,就得按照 man 手册编号 查找的内容 的形式,输入man 3 printf
📗一些常用的选项:

  • num 指定手册查找。
  • -k 根据关键字搜索联机帮助。
  • -a 将所有章节的都显示出来,比如上面提到的printf,如果不用man 3 printf ,也可以使用man -a printf,因为当按下q退出后,会继续往后面搜索,直到所有章节都搜索完毕。

✉️ cp指令

  • 语法: cp [选项] 源文件或目录 目标文件或目录
    功能:将一个或多个源文件或目录复制到指定的目标文件或目录。

在同级目录下,不允许存在同名文件或同名目录。

📗拷贝一个文件

 为了证明文件是通过拷贝到达的目标地,对一个文件进行一个文本编辑(nano),这里对node里的test.txt文件编辑了一个心想事成。将该文件拷贝到上级目录:cp test.txt ..

 如果在同级目录下拷贝文件需要改名字

📙拷贝一个目录

  • -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在。
  • -r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理。

 通过这两个选项,就可以拷贝目录,和拷贝文件处理方式一样,只需要加上 -rf


 如果拷贝目录到同级目录下,需要改名,例如:cp -rf node1 node1.bak

💡说明:

  1.  对于一个目录或文件,在拷贝时可以保证文件名拷贝到新的路径之后保持不变,也可以指定文件名,将内容拷贝过去,文件名也发生修改。例如:cp -rf dir ../node2 ,假如上级目录没有node2,这个命令可以在上级目录创建一个node2目录,再将dir的内容跟拷贝过去。
  2.  cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息
  3. cp -rf /root/node /root/dircp -rf /root/node/* /root/dir 是不一样的,第一个指令是将node的内容包括目录本身都拷贝到dir里,第二个不包括目录本身,只拷贝目录的内容。并且这两种方式都不会拷贝隐藏文件

📗另外一些常用的选项:

  • -i 或 --interactive 覆盖文件之前先询问用户。
  • -R 或 --recursive 递归处理,将指定目录下的文件及子目录一并处理。

✉️ mv指令

语法:[选项] <源文件或目录> <目标文件或目录>
功能:将文件或目录从一个位置移动到另一个位置,或者将文件或目录重命名,经常用来备份文件或目录。

 与cp命令相似,如果目标目录存在,就是将源目录整体剪切到目标目录里,如果目标目录不存在,那么就会在剪切目录的同时修改目录名。按照这个规则,同时就可以实现重命名。


📗一些常用的选项:

  • -f : force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
  • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

✉️ which指令

  • 语法:which [选项] 命令名
    功能:帮助用户快速定位特定命令或程序的执行路径。
    说明:命令名是要查找的可执行程序的名称。可以是一个单独的命令名,也可以是多个命令名用空格分隔。

指令的本质是可执行文件,可以通过which看到所处的路径。例如 which ls

 这里还出现了另一个命令alias ,这个命令可以设置指令的别名,使用alias时,必须使用单引号将原来的命令引起来,防止特殊字符导致错误。

 注意:alias命令的作用只局限于该次登入的操作,相当于临时变量。若要每次登入都能够使用这些命令别名,就需要改变配置文件。


✉️ 文件查看

cat 指令

语法:cat [选项][文件]
功能:查看目标文件的内容。

cat 适合查看小文件的内容,查看大文件会直接刷屏。

📗一些常用的选项:

  • -b 对非空输出行编号。
  • -n 对输出的所有行编号。
  • -s 不输出多行空行。

more 指令

  • 语法:more [选项][文件]
    功能:查看目标文件的内容。

more 指令可以查看大文件,但是只能向后翻页不太推荐,更推荐less 。

📗一些常用的选项:

  • -n 对输出的所有行编号。
  • -q 退出more。

less 指令

  • 语法:less [选项] [文件]
    功能:用于查看(但不完全加载)文本文件,特别是那些比普通文本文件更大的文件,例如二进制文件。

  less的功能比more更强大,除了可以向前翻页,还可以向后翻页,甚至可以通过搜索关键词定位到文件中的特定位置

📗一些常用的选项:

  • -i 忽略搜索时的大小写
  • -N 显示每行的行号
  • /字符串 :向下搜索“字符串”的功能
  • ?字符串: 向上搜索“字符串”的功能
  • n :重复前一个搜索(与 / 或 ? 有关)
  • N :反向重复前一个搜索(与 / 或 ? 有关)
  • q :quit

head 指令

  • 语法:head [选项] [文件]
    功能:显示文件的前几行,默认显示前10行,也可以根据需求指定显示的行数。

head -100 file.txt 就是查看file.txt文件的前100行。

📗一些常用的选项:

  • -n 指定要显示的行数。
  • -q或--quiet或--silent:不显示包含给定文件名的文件头即隐藏文件名。
  • -v或--verbose:总是显示包含给定文件名的文件头即显示文件名。

tail 指令

语法:tail [选项] [文件]
功能:将指定文件的最后几行显示在终端上,默认情况下显示最后10行,也可以根据需求指定显示的行数。不指定文件时,作为输入信息进行处理。常用查看日志文件。

📗一些常用的选项:

  • -f 循环读取。
  • -n 指定要显示的行数。

💫重点来了:

管道

  在Linux中,管道是一种进程间通信的方式,它可以将一个进程的输出直接连接到另一个进程的输入,从而实现数据交互。
对于管道的使用,主要有以下两种情况:

  • 匿名管道:也称为无名管道或临时文件,是两个进程间直接进行通信的一种方式。这种管道没有名字,仅在创建它的进程和它的子进程之间通信。匿名管道的创建通常是通过系统调用pipe()来实现,它会返回两个文件描述符,分别表示管道的读端和写端。
  • 系统调用管道:通过使用系统调用pipe()创建,可以实现将一个进程的输出重定向到另一个文件或进程。例如,当我们在shell中使用“|”操作符时,就是创建了一个系统调用管道。

 无论是哪种类型的管道,都是通过在内核级别进行操作实现的。从内核角度来看,管道就像是一个文件,我们可以像操作文件一样对其进行读写操作。但是,与普通文件不同的是,管道的两端可以同时进行读写操作。

  上面我们了解到了如何查看文件,现在可以运用系统调用管道查看5000–5020行的内容:


❤️ 结语

 文章到这里就结束了,如果对你有帮助,你的点赞将会是我的最大动力,如果大家有什么问题或者不同的见解,欢迎大家的留言~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/110394.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构】排序算法的稳定性分析

&#x1f490; &#x1f338; &#x1f337; &#x1f340; &#x1f339; &#x1f33b; &#x1f33a; &#x1f341; &#x1f343; &#x1f342; &#x1f33f; &#x1f344;&#x1f35d; &#x1f35b; &#x1f364; &#x1f4c3;个人主页 &#xff1a;阿然成长日记 …

网络库OKHTTP(2)面试题

序、慢慢来才是最快的方法。 背景 OkHttp 是一套处理 HTTP 网络请求的依赖库&#xff0c;由 Square 公司设计研发并开源&#xff0c;目前可以在 Java 和 Kotlin 中使用。对于 Android App 来说&#xff0c;OkHttp 现在几乎已经占据了所有的网络请求操作。 OKHttp源码官网 问1…

Python Connect SQLServer 2008

Macos&#xff08;经过了两天&#xff0c;无数次的方法验证&#xff0c;寻找各种资料&#xff0c;总结如下&#xff09; brew install freetds0.91 如果出现错误就进行手工安装&#xff0c;也可以直接使用 brew install freetds安装最新版本&#xff08;测试通过&#xff09; …

kubernetes 多集群管理和联邦集群将是下一波运维浪潮

问题 调研一下国内外K8s平台软件&#xff0c;哪个具有创建标准的K8s集群的功能&#xff1f; 背景 随着云原生技术在越来越多的企业和组织中的大规模落地&#xff0c;如何高效、可靠地管理大规模资源池以应对不断增长的业务挑战成为了当下云原生技术的关键挑战。在过去的很长…

【后端】韩顺平Java学习笔记(基础篇01)

因为之前有c基础&#xff0c;所以差不多一样的就简写了owo 来源&#xff1a;韩顺平 零基础30天学会Java 目录 I. 控制结构&#xff08;简&#xff09; 一、介绍 1. 顺序 → 从上到下执行&#xff0c;无跳转 2. 分支 → 单、双、多、嵌套 1&#xff09;单&#xff0c;即…

利用爬虫采集音频信息完整代码示例

以下是一个使用WWW::RobotRules和duoip.cn/get_proxy的Perl下载器程序&#xff1a; #!/usr/bin/perluse strict; use warnings; use WWW::RobotRules; use LWP::UserAgent; use HTTP::Request; use HTTP::Response;# 创建一个UserAgent对象 my $ua LWP::UserAgent->new();#…

【网络】计算机网络基础概念入门

&#x1f341; 博主 "开着拖拉机回家"带您 Go to New World.✨&#x1f341; &#x1f984; 个人主页——&#x1f390;个人主页 &#x1f390;✨&#x1f341; &#x1fa81;&#x1f341;&#x1fa81;&#x1f341;&#x1fa81;&#x1f341;&#x1fa81;&#…

关于ntp时间源的优先级问题

简介 NTP服务&#xff0c;理论上可以精确到纳秒&#xff0c;但是实际的精确程度根据操作系统和设备而不同。‘ NTP守护进程不仅可以调整自己计算机的系统时间。此外&#xff0c;每个守护进程可以是其他NTP守护进程的客户端、服务器或对等端: 作为客户端&#xff0c;它从一个…

59 分割等和子集

分割等和子集 NP 完全问题&#xff08;01背包&#xff09;题解1 二维DP题解2 空间优化DP&#xff08;改为1D&#xff09; 给你一个只包含正整数的非空数组 nums 。请你判断是否可以将这个数组分割成两个子集&#xff0c;使得两个子集的元素和相等。 示例 1&#xff1a; 输入&a…

Cdiscount、亚马逊新品不开单怎么办 ?测评自养号关键之处及搭建技巧揭秘

一、Listing如何优化? 一个产品要想有销量&#xff0c;Listing优化必须得做好&#xff0c;这是形成转化产生订单的基础。 有些卖家误以为“反复修改了N次”就叫做“优化”&#xff0c;这绝对是误解 想要做好Listing优化&#xff0c;需要知道优化的基本标准&#xff0c;同时…

私人服务器可以干嘛

目录 搭建个人网站或博客&#xff1a; 远程桌面&#xff1a; 作为网盘储存&#xff1a; 作为测试和学习环境&#xff1a; 推广产品&#xff1a; 游戏私服(注意,仅限于个人自己单机玩)&#xff1a; 个人服务器可以用于多种用途&#xff0c;以下是一些常见的用途&#xff1a;…

【k8s】1、基础概念和架构及组件

一、kubernetes概述 K8S是一种开源的容器编排平台&#xff0c;用于自动化部署、扩展和管理容器化的应用程序&#xff0c;它提供了一种容器编排和管理的方式&#xff0c;可以帮助开发人员更轻松的管理容器化的应用程序&#xff0c;并且提供了一种跨多个主机的自动化部署和管理机…

chrome Driver 使用教程

ChromeDriver是一款实用的chrome浏览器驱动工具,能够用于自动化测试、网络爬虫和操作浏览器,其主要作用是模拟浏览器操作。 ## 下载地址 [Chrome for Testing availability]&#xff08;Chrome for Testing availability&#xff09;

六氟化硫SF6断路器的运行维护、泄漏处理及气体在线监测

一、六氟化硫SF6断路器日常运行维护 1、SF6断路器在运行、检修过程中&#xff0c;一定要遵守《DL/T 639-1997 六氟化硫电气设备运行、试验及检修人员安全防护细则》。   2、运行中的巡视检查包括&#xff1a;  &#xff08;1&#xff09;检查SF6 断路器的外绝缘部分&#xf…

CORE: Cooperative Reconstruction for Multi-Agent Perception 论文阅读

论文连接 CORE: Cooperative Reconstruction for Multi-Agent Perception 0. 摘要 本文提出了 CORE&#xff0c;一种概念简单、有效且通信高效的多智能体协作感知模型。 从合作重建的新颖角度解决了该任务&#xff1a; 合作主体共同提供对环境的更全面的观察整体观察可以作为…

Hive用户中文使用手册系列(二)

命令和 CLI 语言手册命令 命令是 non-SQL statements&#xff0c;例如设置 property 或添加资源。它们可以在 HiveQL 脚本中使用&#xff0c;也可以直接在CLI或Beeline中使用。 命令描述退出使用 quit 或 exit 退出交互式 shell。重启将 configuration 重置为默认值(从 Hive…

【STM32】--PZ6860L,STM32F4,ARM3.0开发板

一、ARM3.0开发板详细介绍 1.开发板整体介绍 &#xff08;1&#xff09;各种外设和主板原理图 &#xff08;2&#xff09;主板供电部分5V和3.3V兼容设计 注意跳线帽 2.STM32核心板介绍 3.核心板原理图 STM32和51的IO对应关系 下载电路 二、ARM3.0开发板ISP下载原理分析 1.I…

Go语言入门心法(六): HTTP面向客户端|服务端编程

Go语言入门心法(一): 基础语法 Go语言入门心法(二): 结构体 Go语言入门心法(三): 接口 Go语言入门心法(四): 异常体系 Go语言入门心法(五): 函数 一:go语言面向web编程认知 Go语言的最大优势在于并发与性能,其性能可以媲美C和C,并发在网络编程中更是至关重要 使用http发送请…

android开源投屏工具scrcpy简介

目录 一&#xff0c;初识scrcpy 1.1 scrcpy介绍 1.2 scrcpy特点 二&#xff0c;scrcpy指令说明 2.1 画面设置 2.1.1 缩小分辨率 2.1.2 修改画面比特率 2.1.3 限制画面帧率 2.1.4 画面裁剪 2.1.5 锁定屏幕朝向 2.2 屏幕录制 2.3 连接方式 2.3.1 无线 2.3.2 多设备…

Ai数字人直播系统SaaS源码大开源,源码独立部署助力中小企业发展!

源码独立部署ai数字人直播系统&#xff0c;如果放在上半年的话没有数百万投资几乎是天方夜谭&#xff0c;连想做个数字人代理商少则投资十万多则数十万才能进得了代理门槛。在此期间&#xff0c;数字人市场一度出现了大批不良企业利用网上下载的视频合成源码二次包装后打着数字…