Linux高级命令(扩展)

一、find命令

1、find命令作用

在Linux操作系统中,find命令主要用于进行文件的搜索。

2、基本语法

# find 搜索路径 [选项 选项的值] ...
选项说明:
-name :根据文件的名称搜索文件,支持*通配符
-type :f代表普通文件、d代表文件夹

案例:搜索计算机中的所有文件,然后找到httpd.conf文件

# find /etc -name "httpd.conf" -type f

3、*星号通配符

在Linux操作系统中,我们想要查找的文件名称不是特别清晰(只记住了前面或后面的字符),这个时候就可以使用*星号通配符了。

案例:获取/etc目录下,所有后缀名为.conf的文件信息

# find /etc -name "*.conf" -type f

案例:在/etc目录下,搜索所有以httpd开头的文件

# find /etc -name "httpd*" -type f

4、根据文件修改时间搜索文件

☆ 聊一下Windows中的文件时间概念?

创建时间:代表这个文件什么时间被创建

访问时间:代表这个文件什么时间被访问

修改时间:代表这个文件什么时间被修改

☆ 使用stat命令获取文件的最后修改时间

# stat 文件名称
Modify: 2020-03-31 10:25:20.609010605 +0800

☆ 创建文件时设置修改时间以及修改文件的修改时间

基本语法:

# touch -m -d "日期时间格式" 文件名称

作用:① 如果文件不存在,则自动创建该文件,然后设置其最后的修改时间

② 如果文件存在,touch命令就是只修改文件的最后修改时间

案例:创建一个a.txt文件,设置最后修改时间为2020-03-30 00:00

# touch -m -d "2020-03-30 00:00" a.txt

案例:创建一个b.txt文件,然后在设置文件的最后修改时间为2020-03-29 00:00

# touch b.txt
# touch -m -d "2020-03-29 00:00" b.txt

案例:创建一个c.txt文件,设置最后修改时间为2020-03-28 00:00

# touch -m -d "2020-03-28 00:00" c.txt

☆ 根据文件的==最后修改时间==搜索文件

# find 搜索路径 -mtime +days/-day3
-mtime :根据文件的最后修改时间搜索文件
+ :加号,代表搜索几天之前的文件信息
- :减号,代表搜索几天以内的文件信息

案例:搜索3天以前的文件信息(不包含第3天的,而且只搜索.txt格式)

# find ./ -name "*.txt" -mtime +3

案例:搜索3天以内的文件信息(只搜索.txt格式)

# find ./ -name "*.txt" -mtime -3

5、扩展选项-exec选项

案例:删除Linux系统中/var/log目录下10天以前的日志信息(日志文件格式*.log结尾)

# find /var/log -name "*.log" -mtime +10

第一种解决方案:使用管道命令|

# find /var/log -name "*.log" -mtime +10 |rm -rf

以上命令并不能正确的执行删除操作,原因在于rm命令和ls命令一样,都不支持管道。

# find /var/log -name "*.log" -mtime +10 |xargs rm -rf

第二种解决方案:使用find命令 + -exec选项

基本语法:

# find /var/log -name "*.log" -mtime +10 -exec rm -rf {} \;

6、根据文件的大小搜索文件

基本语法:

# find 搜索路径 -size [文件大小,常用单位:k,M,G]
size值  : 搜索等于size值大小的文件
-size值 : [0, size值)
+size值 : (size值,正无穷大)

案例:搜索/root目录下大小为5M的文件信息

# find ./ -type f -size 5M

案例:搜索/root目录下大小为5M以内的文件信息(5M>size>=0)

# find ./ -type f -size -5M

案例:搜索/目录中,文件大小大于100M的文件信息(size>100M)

# find / -type f -size +100M

7、dd扩展命令

基本语法:

# dd if=/dev/zero of=文件名称 bs=1M count=1
选项说明:
if代表输入文件
of代表输出文件
bs代表字节为单位的块大小。
count代表被复制的块。
其中/dev/zero是一个字符设备,会不断返回0值字节。

主要功能:在Linux操作系统中,生成某个大小的测试文件!

案例:使用dd创建一个1M大小的sun.txt文件

# dd if=/dev/zero of=moon.txt bs=1M count=1

案例:使用dd创建一个5M大小的moon.txt文件

# dd if=/dev/zero of=moon.txt bs=5M count=1
​
if = input file
of = output file

二、tree命令

1、tree命令的主要作用

Windows和Linux都有tree命令,主要功能是创建文件列表,将所有文件以树的形式列出来

2、使用yum命令安装tree

# yum install tree -y

3、以树状结构显示路径下的文件信息

案例:以树状结构显示当前目录下的文件信息

# tree 

案例:以树状结构显示/var/log目录下的文件信息

# tree /var/log

三、scp命令

1、scp命令的主要作用

scp命令的主要作用是实现Linux与Linux系统之间的文件传输。

完成以上实战需要两个Linux系统,解决方案可以使用克隆操作(先关机后克隆)快速生成一个Linux系统

2、scp效果图

scp传输要求:两台计算机所使用的操作系统都必须是Linux操作系统。

ssh: connect to host 10.1.1.17 port 22: Connection refused lost connection

出现以上问题的主要原因在于SCP命令时基于SSH协议,所以两台服务器的sshd服务必须处于开启状态,否则无法完成上传与下载操作。

3、下载文件或目录

基本语法:

# scp [选项] 用户名@linux主机地址:资源路径  linux本地文件路径
选项说明:
-r :代表递归操作,主要针对文件夹

案例:从10.1.1.17服务器下载/root路径下的video.mp4文件到本地的/root目录下

10.1.1.16:

# scp root@10.1.1.17:/root/video.mp4 ./
The authenticity of host '10.1.1.17 (10.1.1.17)' can't be established.
ECDSA key fingerprint is SHA256:Wcxibo2ZQulm6bV+jEakz8IniwFgE6CUHopCxYjexrI.
ECDSA key fingerprint is MD5:48:25:21:93:ef:2b:22:25:5f:95:39:56:0c:8e:ff:75.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.1.1.17' (ECDSA) to the list of known hosts.
root@10.1.1.17's password:123456

案例:从10.1.1.17服务器下载/root路径下的shop文件夹到本地的/root目录下

# scp -r root@10.1.1.17:/root/shop ./
root@10.1.1.17's password:123456

4、上传文件或目录

基本语法:

# scp [选项] linux本地文件路径 用户名@linux主机地址:远程路径
选项说明:
-r :递归操作

案例:把10.1.1.16服务器上的/root/video.mp4上传到10.1.1.17服务器的/root目录下

10.1.1.16:

# scp /root/video.mp4 root@10.1.1.17:/root/

案例:把10.1.1.16服务器上的/root/shop文件夹上传到10.1.1.17服务器的/root目录下

10.1.1.16:

# scp -r /root/shop root@10.1.1.17:/root/

四、计划任务+tar命令实现文件备份

1、回顾计划任务

基本语法:

# crontab [选项]
-l : list缩写,查询当前用户的计划任务信息
-e : edit缩写,编辑计划任务

2、计划任务格式

分 时 日 月 周 执行的命令(要求使用完整路径,which命令)

周的范围比较特殊,正常情况下,只有周一 ~ 周日 1-7,但是计划任务范围0-7,0和7都代表周日

3、案例

案例:每天的凌晨2点0分把/etc目录备份一次/tmp目录下,要求把/etc打包成etc.tar.gz格式

# crontab -e
分 时 日 月 周 /usr/bin/tar -zcf /tmp/etc.tar.gz /etc
0 2 * * * /usr/bin/tar -zcf /tmp/etc.tar.gz /etc

以上案例虽然可以实现对/etc目录的备份,但是有一个小缺点:每次备份时,生成的文件名称是一致的,这样后面备份的文件就会把前面备份的文件进行覆盖!

==案例:备份文件时,要求按时间作为备份文件的名称==

/tmp/etc-20200331.tar.gz

/tmp/etc-20200401.tar.gz

...

# crontab -e
0 2 * * * /usr/bin/tar -zcf /tmp/etc-$(date +"\%Y\%m\%d").tar.gz    /etc
​
重点:
/tmp/etc-$(date +"\%Y\%m\%d").tar.gz

经验之谈:如果在编写计划任务时,出现了%百分号,前面必须添加一个反斜杠\进行转义,否则计划任务会失效!

4、扩展命令:date

基本语法:

# date +"时间格式"
%F : 年-月-日
%T : 小时:分钟:秒
%Y : Year,年
%m : month,月
%d : day,日
%H : Hour,小时
%M : Minute,分钟
%S : Second,秒

案例:获取计算机的系统时间

# date

案例:获取年月日信息

# date +""

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

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

相关文章

IP地址管理系统phpipam部署

IP地址管理系统phpipam部署 一、IPAM管理系统简介二、IPAM安装部署教程2.1 环境准备 三、phpIPAM web配置3.1 初始化3.2 WEB配置使用 四、IPAM管理和使用4.1配置dns4.2 配置ip网段4.3 配置ip地址自动扫描 一、IPAM管理系统简介 phpipam是一个开源Web IP地址管理应用程序&#…

Easy-Laser激光测平仪维修易激光对中仪E920

Easy-Laser激光对中仪常见故障:触摸屏损坏(屏碎,不显示,黑屏,蓝屏,无背光等),对中仪电路板损坏,对中仪接收装置电路板,对中仪发射控制装置电路板等均可维修。…

java使用 Base64 实现用户信息的加密与解密,相当于token

目录 1 问题2 实现1 问题 springboot 项目需要实现对用户的加密和解密 用户登陆之后,对用户信息进行加密存到cookie ,之后访问页面的时候,携带这个cokkie 到其他的页面,然后进行解密,只要cookie 过期,那么页面就访问不了 2 实现 1 实体类 用户信息的实体类 import co…

迅镭激光董事长颜章健荣膺“2023年如皋市科技强企人物”!

10月28日,2023如皋科技人才洽谈会开幕式在如皋隆重举行。江苏省科学技术厅副厅长、党组成员蒋洪,江苏省商务厅副厅长、党组成员孙津,中共南通市委副书记、政法委书记沈雷,中共如皋市市委书记何益军,中共如皋市委副书记…

目标检测与图像识别分类的区别?

目标检测与图像识别分类的区别 目标检测和图像识别分类是计算机视觉领域中两个重要的任务,它们在处理图像数据时有一些区别。 目标检测是指在图像中定位和识别多个目标的过程。其主要目标是确定图像中每个目标的边界框位置以及对应的类别标签。目标检测任务通常涉…

avi怎么转mp4?

avi怎么转mp4?如今市面上涌现了各种多样的视频格式,其中AVI作为一种音频视频交错格式,虽然使用较少但相对常见。它的优点在于占用空间较小,但画面质量并不是很出色。然而,AVI格式也存在一个明显的缺点,即兼…

Java实现Hive UDF详细步骤 (Hive 3.x版本,IDEA开发)

这里写目录标题 前言1. 新建项目2.配置maven依赖3.编写代码4.打jar包5.上传服务器6.代码中引用 前言 老版本编写UDF时,需要继承 org.apache.hadoop.hive.ql.exec.UDF类,然后直接实现evaluate()方法即可。 由于公司hive版本比较高(3.x&#x…

软件工程:小组开发过程技术(VS VSS UNIX C++)

(注:这个东西是2007年写的,算是个缅怀,或是个吐槽。所有注都是本次发布新加的。) 简介 本文讲述完全没有软件工程经验的软件小组如何借助VS VSS等工具为UNIX开发C程序,实现在小组规模的初级开发过程。这不…

【EI会议征稿】第七届先进算法与控制工程国际学术会议(ICAACE 2024)

第七届先进算法与控制工程国际学术会议(ICAACE 2024) 2024 7th International Conference on Advanced Algorithms and Control Engineering 第七届先进算法与控制工程国际学术会议(ICAACE 2024)定于2024年1月26-28日在中国上海…

Android Framework 常见解决方案(24)去除 Android正在启动/Android is Starting 弹窗,直接进入Launcher

1 原理说明 开机以后,设备会有一个“android正在启动”这样的弹框,这个界面是一个叫FallbackHome的Activity来展示的。FallbackHome机制是Android系统启动过程中的一种降级处理机制。当系统启动时,如果默认的Launcher应用无法正常加载或出现…

HD.047 | 水文数据——全球植被数据集[V: VCI]

写在前面 植被作为影响联系土壤、大气、水分等地气要素的重要因素,其准确估算不仅对研究植被动态变化、植被物候过程具有重要意义,而且对于流域生态水文等方面具有十分重要的应用价值。目前已有大量全球植被数据产品,本期选取植被条件指数Vegetation Condition Index(VCI)…

这三种方法轻松实现Excel文档名翻译

在电脑使用中,我们常常需要批量修改文件名并翻译。这时候,我们可以使用“固乔文件管家”软件来轻松实现这一需求。下面就介绍三种方法,帮助你轻松实现Excel文档名翻译。 方法一:使用“固乔文件管家”软件批量修改文件名 1.安装并打…

云原生安全日志审计

记得添加,把配置文件挂载进去 - mountPath: /etc/kubernetes/auditname: audit-policyreadOnly: true.....- hostPath:path: /etc/kubernetes/audit/type: DirectoryOrCreatename: audit-policy/etc/kubernetes/manifests/kube-apiserver.yaml 具体配置文件如下 a…

Paper reading: segment anything in high quality NIPS2023

最近发展起来的SAM模型,表示分割模型的一个大的跃进,尤其是在零样本的能力和灵活提升方面。尽管利用1.1bollion的mask,SAM在掩码预测方面已经存在很大的问题,尤其是目标有着复杂结构的时候。 我们提出一个HA-SAM。 设计学习一个…

C# 如何使用 System.Text.Json 启用不区分大小写的属性名称

本文将介绍如何使用 System.Text.Json 命名空间启用不区分大小写的属性名称匹配。 不区分大小写的属性匹配 默认情况下,反序列化会查找 JSON 与目标对象属性之间区分大小写的属性名称匹配。 若要更改该行为,请将 JsonSerializerOptions.PropertyNameCa…

MySQL 基础学习笔记(二)

目录 1 约束1.1 约束概述1.2 非空约束1.3 唯一约束1.4 主键约束1.5 默认约束1.6 外键约束 2 数据库设计2.1 数据库设计概述2.2 表关系 3 多表查询3.1 多表查询概述3.2 内连接查询3.3 外连接查询3.4 子查询 4 事务4.1 事务概述4.2 四大特征 1 约束 1.1 约束概述 约束是作用于表…

【算法|滑动窗口No.4】leetcode 485.最大连续 1 的个数 487.最大连续 1 的个数 II 1004. 最大连续1的个数 III

个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【手撕算法系列专栏】【LeetCode】 🍔本专栏旨在提高自己算法能力的同时,记录一下自己的学习过程,希望…

Feign的Retryer接口

Feign的Retryer接口 Feign的Retryer接口是用于重试失败请求的接口。当使用Feign进行远程调用时,可能会出现网络故障或服务器错误等问题导致请求失败。此时,可以通过Retryer接口实现自动重试机制,让请求重新发送,直到成功或达到最…

@Autowired和@Inject注解的区别和使用场景

在Spring框架中,Autowired和Inject注解都是用于依赖注入的常用注解。然而,它们在用法和功能上存在一些区别。本文将详细介绍这两个注解的区别和使用场景,并通过示例代码进行演示。 一、Autowired和Inject的区别 注解来源 Autowired是Sprin…

股票价格预测 | 融合CNN和Transformer以提升股票趋势预测准确度

一 本文摘要 股票价格往往很难预测,因为我们很难准确建模数据点之间的短期和长期时间关系。卷积神经网络(CNN)擅长找出用于建模短期关系的局部模式。然而,由于其有限的观察范围,CNN无法捕捉到长期关系。相比之下,Transformer可以学习全局上下文和长期关系。本文提出了一…