【Linux系统编程】命令模式2
目录
一,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与管道的结合运用

相关文章:
【Linux系统编程】命令模式2
目录 一,Linux下的初阶认识 1,管道 2,时间戳 二,Liunx系统命令操作 1,date时间指令 2,cal日历指令 3,which和find查找指令 3-1,which指令: 3-2,find…...
【Leetcode】【中等】1726.同积元组
力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台备战技术面试?力扣提供海量技术面试资源,帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/tuple-with-same-product/ 给你…...
Git教程
文章目录 Git 介绍GIt历史Git 安装环境配置工作区、缓存区和仓库区(版本库)工作区(工作目录)暂存区仓库区git工作目录下文件的装填 Git 生成公钥及添加到gitlab或Gerrit上Git常用命令git stautsgit statu -sgit addgit commitgit reset1. git reset --ha…...
使用序列化技术保存数据 改进 IO流完成项目实战水果库存系统
上一节内容是 使用IO流完成项目实战水果库存系统https://blog.csdn.net/m0_65152767/article/details/133999972?spm1001.2014.3001.5501 package com.csdn.fruit.pojo; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java…...
0基础学习PyFlink——使用PyFlink的Sink将结果输出到外部系统
在《0基础学习PyFlink——使用PyFlink的SQL进行字数统计》一文中,我们直接执行了Select查询操作,在终端中直接看到了查询结果。 select word, count(1) as count from source group by word; ------------------------------------------------------ |…...
会声会影2024旗舰版详细功能介绍
随着网络视频的蓬勃发展,越来越多的人开始涉足视频剪辑领域,毕竟技多不压身嘛。在众多剪辑软件中,剪映和会声会影是备受新手青睐的两种。那么,会声会影和剪映哪个好呢?在它们之间,哪一个更适合初学者呢接&a…...
QtCreator 查看类帮助文档,快捷键操作:按两次F1 全屏帮助,Esc取消全屏
如何查看类帮助文档 选择类,按F1查看类帮助文档。 示例: #include <QLabel> // 将光标放在QLabel上,按F1右侧弹出的类帮助手册可视宽度很小,如果按两次 F1 键,帮助文档将会以全屏模式显示,以便更清…...
C语言文件操作(1)
C语言文件操作(1) 文章目录 C语言文件操作(1)一、理解文件1.概述2.分类①.正常角度②.文本文件和二进制文件 二、文件的打开和关闭1.流和标准流2.文件类型指针3.文件的打开和关闭以及使用类型 三、文件缓冲区 一、理解文件 1.概述…...
adb 操作命令(adb调试QT项目使用到的命令)
1.adb连接串口 获取root权限 adb root && adb remount && adb shell2.测试串口命令 stty -F /dev/ttyS4 cs8 -parenb -cstopb -echoecho "12345\n" > /dev/ttyS8cat /dev/ttyS4 &3.软件在安卓系统上的名字已经活动名称(下面是示…...
mysql下载和安装,使用
先下载安装 官方下载 已下载备份软件 安装,一路下一步设置环境变量 4. 打开一个cmd,输入mysql -u root -p...
Redis底层核心数据结构详解
文章目录 一、深入String(SDS)1. 字符串简介2. SDS存在的意义3. SDS结构设计4. SDS与C字符串的区别4.1 常数复杂度获取字符串长度4.2 杜绝缓冲区溢出4.3 二进制安全4.4 SDS API 5 小结 二、深入List (QuickList)1. 链表节点结构设计2. Redis的链表实现的…...
如何学会从产品经理角度去思考问题?
如何学会从产品经理角度去思考问题? 从产品经理的角度思考问题意味着你需要关注产品从构思到上市全过程中的各个方面,包括用户需求、市场趋势、设计、开发、测试、上市后的用户反馈等。以下是一些策略和方法,帮助你培养从产品经理角度思考问…...
正则表达式的神奇世界:表达、匹配和提取
正则表达式的神奇世界:表达、匹配和提取 前言第一: 什么是正则表达式?第二: 字符匹配和量词:1. 字符匹配:2. 量词:3. 贪婪和非贪婪匹配: 第三:字符类和元字符1. 字符类&a…...
密码登录虽安全,但有时很麻烦!如何禁用或删除Windows 11中的密码登录
如果你想在Windows 11上自动登录,在本指南中,我们将向你展示如何删除你的帐户密码。 在Windows 11上,你可以至少通过三种方式从帐户中删除登录密码。在你的帐户上使用密码有助于保护你的计算机和文件免受来自internet或本地的未经授权的访问。然而,在某些情况下,密码可能…...
Python实现的快速排序代码
Python实现的快速排序代码 def bubble_sort(arr): n len(arr) for i in range(n): for j in range(0, n-i-1): if arr[j] > arr[j1]: arr[j], arr[j1] arr[j1], arr[j] return arr 冒泡排序是一种简单的排序算法,它重复地遍历要排序的数列,…...
【USRP】通信基带物理层历史
无线通信的基带物理层开发历史涵盖了从早期无线技术到当前复杂的移动通信标准的各种进步。以下是关于无线通信基带物理层开发的简要历史概述: 无线电初期:20世纪初,Guglielmo Marconi等人通过无线电进行了早期的无线通信尝试。这些早期的尝试…...
依靠继承与聚合,实现maven搭建分布式项目
简介聚合 对于复杂的Maven项目,一般建议采用多模块的方式来设计开发,便于后期维护管理。但是构建项目时,如果每次都需要按模块一个一个进行构建会十分麻烦,而Maven的聚合功能就可以很好的解决这个问题,当用户对聚合模…...
华为OD 叠积木(100分)【java】A卷+B卷
华为OD统一考试A卷+B卷 新题库说明 你收到的链接上面会标注A卷还是B卷。目前大部分收到的都是B卷。 B卷对应20022部分考题以及新出的题目,A卷对应的是新出的题目。 我将持续更新最新题目 获取更多免费题目可前往夸克网盘下载,请点击以下链接进入: 我用夸克网盘分享了「华为O…...
vue重修之自定义项目、ESLint和代码规范修复
文章目录 VueCli 自定义创建项目ESlint代码规范及手动修复代码规范错误 VueCli 自定义创建项目 安装脚手架 (已安装) npm i vue/cli -g创建项目 vue create xxx选项 Vue CLI v5.0.8 ? Please pick a preset:Default ([Vue 3] babel, eslint)Default ([Vue 2] babel, eslint) …...
华为OD 完全二叉树非叶子部分后序遍历(200分)【java】A卷+B卷
华为OD统一考试A卷+B卷 新题库说明 你收到的链接上面会标注A卷还是B卷。目前大部分收到的都是B卷。 B卷对应往年部分考题以及新出的题目,A卷对应的是新出的题目。 我将持续更新最新题目 获取更多免费题目可前往夸克网盘下载,请点击以下链接进入: 我用夸克网盘分享了「华为OD…...
调用支付宝接口响应40004 SYSTEM_ERROR问题排查
在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...
云计算——弹性云计算器(ECS)
弹性云服务器:ECS 概述 云计算重构了ICT系统,云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台,包含如下主要概念。 ECS(Elastic Cloud Server):即弹性云服务器,是云计算…...
Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...
TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案
一、TRS收益互换的本质与业务逻辑 (一)概念解析 TRS(Total Return Swap)收益互换是一种金融衍生工具,指交易双方约定在未来一定期限内,基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...
C++实现分布式网络通信框架RPC(2)——rpc发布端
有了上篇文章的项目的基本知识的了解,现在我们就开始构建项目。 目录 一、构建工程目录 二、本地服务发布成RPC服务 2.1理解RPC发布 2.2实现 三、Mprpc框架的基础类设计 3.1框架的初始化类 MprpcApplication 代码实现 3.2读取配置文件类 MprpcConfig 代码实现…...
链式法则中 复合函数的推导路径 多变量“信息传递路径”
非常好,我们将之前关于偏导数链式法则中不能“约掉”偏导符号的问题,统一使用 二重复合函数: z f ( u ( x , y ) , v ( x , y ) ) \boxed{z f(u(x,y),\ v(x,y))} zf(u(x,y), v(x,y)) 来全面说明。我们会展示其全微分形式(偏导…...
电脑桌面太单调,用Python写一个桌面小宠物应用。
下面是一个使用Python创建的简单桌面小宠物应用。这个小宠物会在桌面上游荡,可以响应鼠标点击,并且有简单的动画效果。 import tkinter as tk import random import time from PIL import Image, ImageTk import os import sysclass DesktopPet:def __i…...
