【Linux系统编程】命令模式2

news/2024/5/5 22:06:24/文章来源:https://blog.csdn.net/m0_74246469/article/details/133920047

目录

一,Linux下的初阶认识

1,管道

2,时间戳

二,Liunx系统命令操作

1,date时间指令

2,cal日历指令

3,which和find查找指令

3-1,which指令:

3-2,find指令

3-3,whereis直接查找指令

4,grep指令

5,sort指令

6,uniq指令


一,Linux下的初阶认识

1,管道

        管道符号:"|"。

        管道是把一个程序的输出直接连接到另一个程序的输入,通常用来连接两个进程,它是一种抽象的感念,我们可将其想象为一种普通的管道,先从一端流入,然后再从一端输出,即将前面的命令作为流水流入后面的指令。同理,在计算机中,先将一种"流"从管道的一端流入,然后再流入另一端,作为输入,这里我们先了解这么多即可,后面的文章会详细介绍。

接下来我来用实例跟大家演示一下:


2,时间戳

        时间戳是一种时间的感念,是从1970年1月1日上午8点开始所经过的时间,其中不考虑闰秒。

        由于世界各处的时间都不太统一,在运用时也会很大误差,所以,时间戳是我们所用的同一时间概念,而且,由以上感念可知,时间戳随时随地都在不断变化,我们可利用其特点来进行设置数据或查看系统有关的时间感念。此概念非常重要,后面将会不断运用。



二,Liunx系统命令操作

        要提醒的是以下的实操我用的系统版本是CentOS 7.9 64位,不同版本的系统有极少命令可能有些不同,但原理和大多数命令都相同。


1,date时间指令

用法:

        date   ——显示当前自己机器的时间 

        date 指定格式显示时间: date +%Y:%m:%d ——显示当前的"年:月:日"。 

        注意:在显示格式方面,使用者可以设定想要设定的格式,格式设定为一个加号"+"后多个标记的内容,其中常用的时间标记有以下:

        %H:小时

        %M:分钟

        %S:秒

        %X:相当于%H:%M:%S

        %d:日

        %m:月份

        %Y:完整的年份

        %F:相当于%Y-%m-%d

具体运用实例如下:

        data指令不光可以显示自己当前机器的时间,还可以用来显示时间戳。

语法:

        date +%s ——显示当前的时间戳

        date -d @n ——显示时间戳为n时对应当下的时间。例:当n = 0时显示时间戳的起始时间,即1970年1月1日上午8点。

        date [格式] -d @n 或 date -d @n [格式] ——按照指定格式来显示时间戳为n时对应当下的时间。


2,cal日历指令

        cal指令于date不同,cal用于查看日历,当我们要查看具体的时间时要用date,要查看日历时用cal。

语法:

        cal ——显示当前月份的日历

        cal [年份] ——将指定年份的全部日历


3,which和find查找指令
3-1,which指令:

        which 指令较为简单,它是用来查找指令所在的途径(每个命令都在指定的目录中)

        语法:which [指令] ——直接显示指令所在的路径和此命令的命名操作,当指令没有命名操作时只会显示所在的路径。


3-2,find指令

        find指令用来查找指定目录下的指定文件的路径,与which不同的是find可以查找所有文件的途径,而which只能用来查找指令文件的途径。

语法:

        find [目录] -name 文件 ——查找该目录下所有指定文件的所有途径(因为文件名在不同目录下可以重复)

        这里要说明的是find是在硬盘上遍历查找,而硬盘上的文件巨多,因此查找起来非常消耗硬盘上的资源,效率也非常低,因此要慎重运用find查找文件。


3-3,whereis直接查找指令

        whereis也是用于查找文件路径,与find不同的是,wherels是从系统下的数据库中查找文件路径,因此,whereis查找文件的速度要比find更快。但是系统的数据库也不是实时更新,不在数据库中的文件我们是查找不到的,所以,wherels查找文件路径也有缺陷。

语法:

        wherels 文件    ——从数据库中查找文件的路径


4,grep指令

功能:在指定文件中搜索字符串,将找到指定字符串的行打印出来

例如:grep 'A' test.txt ——查找文件test.txt的每一行,将每一行含有字符'A'的显示出来。

语法:grep  [选项]  要搜索指定的字符串  文件

常用选项:

        -i  ——忽略字符串的大小写,将大小写视为相同

        -n ——在搜索的基础上顺便输出行号

        -v ——反向选择,即显示出没有"搜索字符串"内容的那一行

不用选项的命令图

加入选项的命令图

运用管道的grep


5,sort指令

        这个指令我们只需初步了解作用即可。sort是将文件中的行内容按照ASCII码值的大小进行排序,然后一行一行的显示出来。其中,默认排升序。


6,uniq指令

功能:删除文件中相邻行重复的数据。

语法; uniq [选项] [文件]

常用选项:

        -d:将文件中相邻重复行的数据显示出来,有多行重复时只显示一行。

        -c:打印每行数据出现的次数,注意,这也是只针对相邻非空数据

        -u:此选项的作用与uniq没有选项的作用基本相同,与uniq普通使用的区别很细微,对此我们可忽略不计。

        因为此命令删除重复行的数据有缺陷,所以,当要删除文件中所有行中重复的数据时要先用sort指令进行排序,此时重复行的数据将相邻,再用此命令进行删除,即可删除文件中所有重复行的数据。

uniq的运用图如下:

uniq与uniq -u的使用

uniq -d与uniq -c的运用

uniq与管道的结合运用

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

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

相关文章

分享一个python无人超市管理系统django项目实战源码调试 lw 开题

💕💕作者:计算机源码社 💕💕个人简介:本人七年开发经验,擅长Java、Python、PHP、.NET、微信小程序、爬虫、大数据等,大家有这一块的问题可以一起交流! 💕&…

[Linux 基础] make、Makefile自动化构建代码工具

文章目录 1、make与Makefile是什么2、为什么要有make与Makefile3、怎么实现一个Makefile文件3.1 如何编写Makefile文件3.1.1 依赖关系3.1.2 依赖方法 3.2 如何清理项目3.2.1 如何编写3.2.2 clean详解 3.3 make的使用3.4 原理3.4.1 查看文件修改时间 1、make与Makefile是什么 m…

【王道代码】【2.3链表】d3

关键字: 奇偶序号拆分、a1,b1,a2,b2...an,bn拆分a1,a2...,bn,...b2,b1、删除相同元素

比例运算放大电路为什么要加平衡电阻

这个是反相比例运算放大电路,输出电压等于-Rf/R1乘以输入电压。 这个是同相比例运算放大电路,输出电压等于1Rf/R1乘以输入电压。 大家可以看到这两个电路中,都有一个电阻R2,反相比例运算放大电路放在同相端到地,同相比…

二叉排序树(BST)

二叉排序树 基本介绍 二叉排序树创建和遍历 class Node:"""创建 Node 节点"""value: int 0left Noneright Nonedef __init__(self, value: int):self.value valuedef add(self, node):"""添加节点node 表示要添加的节点&quo…

【C++】继承 ⑧ ( 继承 + 组合 模式的类对象 构造函数 和 析构函数 调用规则 )

文章目录 一、继承 组合 模式的类对象 构造函数和析构函数调用规则1、场景说明2、调用规则 二、完整代码示例分析1、代码分析2、代码示例 一、继承 组合 模式的类对象 构造函数和析构函数调用规则 1、场景说明 如果一个类 既 继承了 基类 ,又 在类中 维护了一个 其它类型 的…

找不到conda可执行文件:解决方法

1.在新版本的pycharm出现的问题如下: 2.解决方法: 2.1 将anaconda\Scripts\conda.exe选中 2.2选择自己的anconda自己的环境,之后就可以正常创建conda环境

2023-10-23 LeetCode每日一题(老人的数目)

2023-10-23每日一题 一、题目编号 2678. 老人的数目二、题目链接 点击跳转到题目位置 三、题目描述 给你一个下标从 0 开始的字符串 details 。details 中每个元素都是一位乘客的信息,信息用长度为 15 的字符串表示,表示方式如下: 前十…

橙河网络:国外问卷调查赚钱的项目可靠吗?

国外问卷调查项目是可靠的,是一个长期稳定的互联网项目。 大家好,我是橙河网络,今天聊一聊国外问卷调查赚钱的项目可靠吗? 在海外地区,很多公司和机构,它们为了收集一些关于产品和服务的消费者意见&#…

深入浅出Apache SeaTunnel SQL Server Sink Connector

在大数据时代,数据的迁移和流动已经变得日益重要。为了使数据能够更加高效地从一个源流向另一个目标,我们需要可靠、高效和易于配置的工具。今天,我们将介绍 JDBC SQL Server Sink Connector,这是一个专为 SQL Server 设计的连接器…

MyBatis-Plus实现逻辑删除[MyBatis-Plus系列] - 492篇

历史文章(文章累计490) 《国内最全的Spring Boot系列之一》 《国内最全的Spring Boot系列之二》 《国内最全的Spring Boot系列之三》 《国内最全的Spring Boot系列之四》 《国内最全的Spring Boot系列之五》 《国内最全的Spring Boot系列之六》 M…

【鸿蒙软件开发】文本输入(TextInput/TextArea)

文章目录 前言一、输入框1.1 创建输入框单行输入框多行输入框单行和多行输入框的区别 1.2 设置输入框的类型有哪些类型基本输入模式(默认类型)密码输入模式 1.3 自定义样式设置无输入时的提示文本设置输入框当前的文本内容。添加backgroundColor改变输入…

MECE分析法

1、前言 前段时间在对项目进行问题分析的时候,领导要求要符合MECE原则,做到逻辑完整而不能遗漏。虽然没听过这个原则,但是总感觉很有道理(领导说的都对)。于是乎,就找了一些资料了解了一下。 MECE分析法是…

【Rust】4 一文讲解重点 pattern matching | trait | 生命周期 | 闭包 | 迭代器 | 智能指针 | 并发与并行

文章目录 一、pattern matching二、trait2.1 常见 trait2.1.1 Copy 和 Clone2.1.2 PartialEq 和 Eq2.1.3 PartialOrd 和 Ord2.1.4 Hash2.1.5 From, Into, TryFrom, TryInto 2.2 概念2.2.1 关联类型2.2.2 关联常量2.3.3 泛型关联类型2.3.3.1 示例: 用泛型关联类型, 创建集合工厂…

快手进与退,快手董事长在辞任前套现37.78亿港元

快手科技(1024.HK)在港交所发布公告,宣布自2023年10月29日起,公司创始人宿华将不再担任董事会董事长,而继续担任执行董事和薪酬委员会成员,而他的不同投票权将保持不变。与此同时,快手科技的现任…

爱创科技携手洽洽食品,探索渠道数字化最优解!

坚果的下半场,是从吃到喝。 消费升级大潮下,健康养生理念逐渐深入人心。以“天然健康”为核心的食品新消费潮流正加速形成,一个个打着“美味与营养”黄金设定的品类风口正被不断创建,其中人气有增无减的当属植物基饮品。据相关报告…

【蓝桥杯001】

个人名片: 🐼作者简介:一名大二在校生,喜欢编程🎋 🐻‍❄️个人主页🥇:小新爱学习. 🐼个人WeChat:hmmwx53 🕊️系列专栏:&#x1f5bc…

pv操作题目笔记

对于 pv 操作分以下几步走 什么是pv操作 PV操作在进程同步中通常指的是信号量(Semaphore)操作。信号量是一种用于控制多个并发进程或线程之间的同步和互斥访问的同步工具。PV操作通常涉及两个基本操作:P操作(wait操作&#xff0…

024-第三代软件开发-TabView

第三代软件开发-TabView 文章目录 第三代软件开发-TabView项目介绍TabView官方示例 项目实际使用 关键字: Qt、 Qml、 TabView、 关键字4、 关键字5 项目介绍 欢迎来到我们的 QML & C 项目!这个项目结合了 QML(Qt Meta-Object Langu…

js如何解决跨域问题?

🙂博主:锅盖哒 🙂文章核心:js如何解决跨域问题? 目录 前言:跨域问题的本质 详解:跨域问题的原因和限制 跨域问题的限制包括: 用法:解决跨域问题的方法 1. JSONP(J…