大数据运维一些常见批量操作命令

2023-09-20 20:58:17

大数据运维中,批量操作是一项常见的任务。在使用flume进行数据采集的过程中,有时会出现故障导致采集停止,此时积累了大量的文件。如果想要将这些文件迁移到新的目录,直接使用"mv"命令可能会因为文件数目过多而报错。为了解决这个问题,我们可以利用管道技术和"xargs"命令。

"xargs"是一个用于给命令传递参数的过滤器,同时也是组合多个命令的工具。它可以将管道或标准输入的数据转换成命令行参数,并且可以从文件的输出中读取数据。

下面是一些常见的批量操作命令示例:

常用操作1:将当前目录的文件移动到新的目录

find . -name '2106*.json' | xargs -i mv {} ../newdir

上述命令使用了"find"命令来查找当前目录下符合特定文件名模式(以"2106"开头,后缀为".json")的文件,并将结果通过管道传递给"xargs"命令。"xargs"命令会将每个文件作为参数传递给"mv"命令,将其移动到目标目录"../newdir"中。

常用操作2:批量删除当前目录下带有".json.1"后缀的文件

find . -name '*.json.1' | xargs -i rm -f {}

上述命令使用"find"命令来查找当前目录下所有文件名以".json.1"结尾的文件,并通过管道传递给"xargs"命令。"xargs"命令将每个文件作为参数传递给"rm"命令,使用"-f"选项强制删除这些文件。

常用操作3:批量kill掉Java进程

ps aux | grep test.jar | grep -v grep | awk '{print $2}' | xargs kill -9

上述命令使用了一系列的命令来批量kill掉Java进程。首先,使用"ps aux"命令获取系统中所有正在运行的进程。然后,通过管道将结果传递给"grep"命令,筛选出包含"test.jar"关键字的进程。接着,使用"grep -v grep"命令排除掉grep命令本身产生的进程信息。最后,使用"awk '{print $2}'"命令提取出进程号,并将其作为参数传递给"xargs"命令。"xargs"命令将每个进程号作为参数传递给"kill"命令,使用"-9"选项强制终止这些进程。

通过以上示例,我们可以看到如何使用"xargs"命令结合其他命令来进行批量操作。这些命令可以根据实际需求进行修改和组合,以满足大数据运维中的各种批量操作需求。

在实际应用中,我们需要注意以下几点:

(1)理解并熟悉各个命令的选项和参数含义,确保使用正确的命令和选项。

(2)在使用"xargs"命令时,可以使用"-i"选项来指定替换字符串,将管道或标准输入的数据插入到命令中的特定位置。

(3)如果需要对文件名包含空格或特殊字符的文件进行操作,可以使用"-0"选项来处理,配合"find"命令的"-print0"选项一起使用。

总之,掌握大数据运维中常见的批量操作命令是非常重要的。通过合理运用管道技术和"xargs"命令,可以提高工作效率,并且能够适应各种复杂的操作需求。希望以上内容能够对大家有所帮助,在实际工作中能够灵活运用这些技巧。

更多推荐

图解直接映射(Direct mapped)、全相联(Fully-associative)和组相联(Set-associative)cache缓存基本原理

图解直接映射(Directmapped)、全相联(Fully-associative)和组相联(Set-associative)cache一,直接映射缓存(Directmappedcaches)1.1直接映射示例1.2直接映射原理1.3cache颠簸(cachethrashing)二,全相联映射(Fully-assoc

强化学习从基础到进阶–案例与实践[8]:近端策略优化(proximal policy optimization,PPO)算法

【强化学习原理+项目专栏】必看系列:单智能体、多智能体算法原理+项目实战、相关技巧(调参、画图等、趣味项目实现、学术应用项目实现专栏详细介绍:【强化学习原理+项目专栏】必看系列:单智能体、多智能体算法原理+项目实战、相关技巧(调参、画图等、趣味项目实现、学术应用项目实现对于深度强化学习这块规划为:基础单智能算法教学(g

爬虫入门基础与Selenium反爬虫策略

目录一、爬虫入门基础1、什么是爬虫?2、爬虫的分类3、爬虫的基本流程二、Selenium简介1、Selenium是什么?2、Selenium的用途三、应对反爬虫的Selenium策略1、使用代理IP2、模拟用户行为3、设置合理的请求间隔时间4、随机化请求参数5、使用JavaScript渲染引擎四、Selenium的局限

【LLM模型篇】LLaMA2 | Vicuna | EcomGPT等

文章目录一、LLM模型chatglm2模型Vicuna模型LLaMA2模型1.训练细节2.EvaluationResults3.更多参考alpaca模型百川大模型其他大模型和peft高效参数微调二、行业垂直领域大模型度小满的轩辕2.0模型微调1.模型介绍2.混合微调MedicalGPT:医疗大模型ChatLaw:法律大

Firefox火狐浏览器显示你的连接不安全,是什么意思?

当Firefox连接到一个安全的网站时(网址最开始为“https://”),它必须确认该网站出具的证书有效且使用足够高的加密强度,以充分保护您的隐私。如果证书无法通过验证,或加密强度过低,Firefox会中止连接到这个网站,并向您显示SSL证书错误信息页面:“你的连接不安全”。什么情况下出现“你的连接不安全”?出现“你

一文掌握cshell编程(概念、案例双管齐下)

前言相信在IC行业中不少公司使用cshell作为脚本语言之一,很不幸的是目前网络上cshell的中文介绍少之又少,绝大部分是bash的介绍。近期有幸阅读了一本cshellcookbook,故将个人的学习心得发布于此,也希望志同道合的朋友一起探讨一番。(从看cookbook到博文的发表历时4个月,每天下完班就瞌睡的很,i

使用Python构建强大的网络爬虫

介绍网络爬虫是从网站收集数据的强大技术,而Python是这项任务中最流行的语言之一。然而,构建一个强大的网络爬虫不仅仅涉及到获取网页并解析其HTML。在本文中,我们将为您介绍创建一个网络爬虫的过程,这个爬虫不仅可以获取和保存网页内容,还可以遵循最佳实践。无论您是初学者还是经验丰富的开发人员,本指南都将为您提供构建既有效

【C++ Efficiency】lazy evaluation(缓式评估)的4种用途

lazyevaluation(缓式评估)以某种方式撰写你的classes,使它们延缓运算,直到那些运算结果刻不容缓被迫切需要为止。lazyevaluation的4种用途1.ReferenceCounting(引用计数)classString{};//string类Strings1="Hello";Strings2=s1

Java版的数据结构——栈和队列

目录1.栈(Stack)1.1概念1.2栈的使用1.3栈的模拟实现1.4栈的应用场景1.4.1改变元素的序列1.4.2将递归转化为循环2.队列(Queue)2.1概念2.2队列的使用2.3队列模拟实现2.4循环队列3.双端队列(Deque)1.栈(Stack)1.1概念栈:一种特殊的线性表,其只允许在固定的一端进行插入

【Spatial-Temporal Action Localization(六)】论文阅读2021年

文章目录1.MultiSports:AMulti-PersonVideoDatasetofSpatio-TemporallyLocalizedSportsActions摘要和结论引言:针对痛点和贡献数据特点2.Actor-Context-ActorRelationNetworkforSpatio-TemporalAct

性能测试 —— Tomcat监控与调优:Jconsole监控

JConsole的图形用户界面是一个符合Java管理扩展(JMX)规范的监测工具,JConsole使用Java虚拟机(JavaVM),提供在Java平台上运行的应用程序的性能和资源消耗的信息。在Java平台,标准版(JavaSE平台)6,JConsole的已经更新到目前的外观,类似于Windows和GNOME桌面(其他

热文推荐