命令行随笔

1、xargs

xargs命令是将 前一个命令的标准输出作为后一个命令的命令行参数,xargs的默认命令是echo,默认定界符是空格和回车。

而管道是将 前一个命令的标准输出作为后一个命令的标准输入

echo例子

# echo "apple banana orange" | xargs echo "I like"
I like apple banana orange

find例子

# find . -name "*.txt" | xargs rm

find . -name "*.txt"命令用于查找当前目录下的所有以".txt"为扩展名的文件,并将结果通过管道传递给了xargs命令。xargs命令将每个文件名作为参数传递给rm命令,从而批量删除了这些文件。

-d自定义分隔符
# echo ‘11@22@33’ | xargs
‘11@22@33’
# echo ‘11@22@33’ | xargs -d @
‘11 22 33’
-n指定参数数量
# echo '11@22@33@44@55@66@77@88@99@00' | xargs -d '@' -n 3 echo
11 22 33
44 55 66
77 88 99
00

每次传递几个参数给其后面的命令执行,如果xargs从标准输入中读入内容,然后以分隔符分割之后生成的命令行参数有10个,使用 -n 3 表示一次传递给xargs后面的命令是3个参数,因为一共有10个参数,所以要执行4次,才能将参数用完。

-E指定结尾
# echo '11 22 33' | xargs -E 33 echo
11 22

当xargs解析出多个命令行参数的时候,如果搜索到-e指定的命令行参数,则只会将-e指定的命令行参数之前的参数(不包括-e指定的这个参数)传递给xargs后面的命令。

注意:-d 和 -E不能同时使用。

-i多次接受输入,默认是{}作为占位符
# ls logdir/ | xargs -i mv ./logdir/{} ./logdir/{}.bak

重命名时在每个传递过来的文件名加上后缀.bak,这需要两个参数位。

将不同列作为不同的参数传入

input.txt内容

1 2 3
4 5 6
7 8 9

script.sh脚本

#!/bin/bash
echo "First column: $1"
echo "Second column: $2"
echo "Third column: $3"

运行shell脚本

cat input.txt | awk '{print $0}' | xargs -n 3 ./script.sh

执行结果

First column: 1
Second column: 2
Third column: 3
First column: 4
Second column: 5
Third column: 6
First column: 7
Second column: 8
Third column: 9

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

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

相关文章

MySQL篇----第十八篇

系列文章目录 文章目录 系列文章目录前言一、SQL 语言包括哪几部分?每部分都有哪些操作关键二、完整性约束包括哪些?三、什么是锁?四、什么叫视图?游标是什么?前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,…

梯度提升树系列8——GBDT与其他集成学习方法的比较

目录 写在开头1. 主要集成学习算法对比1.1 GBDT1.2 随机森林1.3 AdaBoost1.4 整体对比2. 算法性能的比较分析2.1 准确率与性能2.2 训练时间和模型复杂度2.3 应用实例和案例研究3. 选择合适算法的标准3.1 数据集的特性3.1.1 数据规模与维度3.1.2 数据质量3.2 性能需求3.2.1 准确…

Unity报错Currently selected scripting backend (IL2CPP) is not installed

目录 什么是il2cpp il2cpp换mono Unity打包报错Currently selected scripting backend (IL2CPP) is not installed 什么是il2cpp Unity 编辑器模式下是采用.net 虚拟机解释执行.net 代码,发布的时候有两种模式,一种是mono虚拟机模式,一种是il2cpp模式。由于iOS AppStore…

pandas dataframe写入excel的多个sheet页面

pandas根据dataframe生成一个excel文件: Dataframe保存新文件 直接把dataframe格式的数据保存到多个sheet页程序如下: excel_file "导出excel文件.xlsx" if os.path.exists(excel_file):os.remove(excel_file)# 生成一个新文件 with pd.Ex…

怎么对接快团团团长?如何对接快团团团长?

1、首先来说,你要需要,树立良好的心态,拓展快团团大团长合作和开发传统渠道是一样的,能有10%的回复率就不错了,反复几次沟通也是非常有必要的。要有“大团长思维”,就是换位思考,他们是处于什么…

Unity类银河恶魔城学习记录3-6 Finalize BattleState源代码 P52

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili Enemy.cs using System.Collections; using System.Collections.Generic; …

【Opencv学习】04-图像加法

文章目录 前言一、图像加法混合1.1 代码1.2 运行结果 二、图像的按位运算-组合相加2.1 代码2.2 运行结果示例:PPT平滑切换运行结果 总结 前言 简单说就是介绍了两张图如何组合在一起。 1、混合,透明度和颜色会发生改变 2、组合,叠加起来。可…

【讨论】C语言提高之指针表达式

在理解指针表达式之前先有一个概念就是“左值”和“右值”,对于左值就是可以出现在赋值符号左边的东西,右值就是那些可以出现在赋值符号右边的东西。进一步抽象可以这样理解:左值应该可以作为一个地址空间用来存放一个值,而右值可…

Unity学习笔记(零基础到就业)|Chapter03:C#核心

Unity学习笔记(零基础到就业)|Chapter03:C#核心 前言一、面向对象编程二、面向对象编程三大特性(一)封装1.类和对象(1)什么是类(2)类的声明(3)什么是(类)对象(4)实例化(类)对象的语法(5)类和结构体的区别2.成员变量和访问修饰符(1)成员变量基本规则(2)实…

车载测试Vector工具——常见问题汇总

车载测试Vector工具——常见问题汇总 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师(Wechat:gongkenan2013)。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何 消耗你的人和事,多看一眼都是你的…

Linux操作系统基础(九):Linux用户与权限

文章目录 Linux用户与权限 一、文件权限概述 二、终端命令:组管理 三、终端命令:用户管理 1、创建用户 、 设置密码 、删除用户 2、查看用户信息 3、su切换用户 4、sudo 4.1、给指定用户授予权限 4.2、使用 用户 zhangsan登录, 操作管理员命令…

Netty——基于Java NIO的网络通信框架

前言 大家好,我是chowley,我之前在项目中有接触过异步处理,当时的服务并发量较高,引入了Netty来搭建通信模块,今天我就来总结一下Netty的基础内容。 Netty 是一个基于 Java NIO(New I/O)的高性…

力扣-260. 只出现一次的数字 III

文章目录 力扣题目代码 力扣题目 给你一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任意顺序 返回答案。 你必须设计并实现线性时间复杂度的算法且仅使用常量额外空间来解决此问题…

【JAVA WEB】 开发环境配置

目录 Visual studio 安装 插件安装 第一个页面编写 前端开发工具有很多,例如sublime、idea、vscode(企业开发前端的时候非常常用的一个开发工具)。这里演示vscode的安装配置。 Visual studio 安装 官网下载VS code软件 链接:Visual Stu…

centos中docker操作+安装配置django并使用simpleui美化管理后台

一、安装docker 确保系统是CentOS 7并且内核版本高于3.10,可以通过uname -r命令查看内核版本。 更新系统软件包到最新版本,可以使用命令yum update -y。 安装必要的软件包,包括yum-utils、device-mapper-persistent-data和lvm2。使用命令yum install -y yum-utils devic…

多视图特征学习 Multi-view Feature Learning既可以被看作是一种学习框架,也可以被看作是一种具体的学习算法!

Multi-view Feature Learning 1.多视图特征学习Multi-view Feature Learning的基本介绍总结 1.多视图特征学习Multi-view Feature Learning的基本介绍 多视图特征学习是一种利用多视图数据集来进行联合学习的机器学习方法。多视图数据指的是对同一事物从多种不同的途径或角度进…

AutoSAR(基础入门篇)7.3-使用DEV配置SWCRTE

目录 一、实验概览 1、实验目的 2、实验内容 二、步骤一:配置SWC

如何为Kafka加上账号密码(二)

认证策略SASL/PLAIN 上篇文章中我们讲解了Kafka认证方式和基础概念,并比较了不同方式的使用场景。 我们在《2024年了,如何更好的搭建Kafka集群?》中集群统一使用PLAINTEXT通信。Kafka通常是在内网使用,但也有特殊的使用场景需要…

软件安全测试报告如何编写?权威的安全测试报告如何获取?

软件安全测试报告是一份详尽的文件,它主要通过对软件进行全面、系统的测试,评估软件的安全性,并在测试结束后起草编写的报告。该报告能清晰地展示出软件的各项安全风险以及潜在威胁,为用户提供安全方面的决策依据,并帮…

MySQL篇之索引

一、定义 索引(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护着满足特定查找算法的数据结构(B树),这些数据结构以某种方式引用(指向)数据&#xff0…