1、多行变成单行

-bash-3.2# cat test.txt

a b c d e f

g o p q

-bash-3.2# cat test.txt |xargs

a b c d e f g o p q

2、单行变成多行

-bash-3.2# cat test.txt

a b c d e f g o p q

-bash-3.2# cat test.txt |xargs -n 2

a b

c d

e f

g o

p q

3、删除某个重复的字符来做定界符

-bash-3.2# cat test.txt

Aaaagttttgyyyygcccc

-bash-3.2# cat test.txt |xargs -d g

aaaa tttt yyyy cccc

4、删除某个重复的字符来做定界符后,变成多行

-bash-3.2# cat test.txt |xargs -d g -n 2

aaaa tttt

yyyy cccc

5、用find找出文件以txt后缀,并使用xargs将这些文件删除

-bash-3.2# find /root/ -name "*.txt" -print        #查找

/root/2.txt

/root/1.txt

/root/3.txt

/root/4.txt

-bash-3.2# find /root/ -name "*.txt" -print0 |xargs -0 rm -rf   #查找并删除

-bash-3.2# find /root/ -name "*.txt" -print          #再次查找没有

6、查找普通文件中包括thxy这个单词的

-bash-3.2# find /root/ -type f -print |xargs grep "thxy"

/root/1.doc:thxy

7、查找权限为644的文件,并使用xargs给所有加上x权限

-bash-3.2# find /root/ -perm 644 -print

/root/1.c

/root/5.c

/root/2.doc

/root/3.doc

/root/1.doc

/root/2.c

/root/4.doc

/root/4.c

/root/3.c

-bash-3.2# find /root/ -perm 644 -print|xargs chmod a+x

-bash-3.2# find /root/ -perm 755 -print

/root/1.c

/root/5.c

/root/2.doc

/root/3.doc

/root/1.doc

/root/2.c

/root/4.doc

/root/4.c

/root/3.c

8、ps -ef|grep LOCAL=NO|grep -v grep|cut -c 9-15|xargs kill -9

运行这条命令将会杀掉所有含有关键字"LOCAL=NO"的进程:

管道符"|"用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。

"ps -ef" 是linux里查看所有进程的命令。这时检索出的进程将作为下一条命令"grep LOCAL=NO"的输入。

"grep LOCAL=NO" 的输出结果是,所有含有关键字"LOCAL=NO"的进程。

"grep -v grep" 是在列出的进程中去除含有关键字"grep"的进程。

"cut -c 9-15" 是截取输入行的第9个字符到第15个字符,而这正好是进程号PID。

"xargs kill -9" 中的 xargs 命令是用来把前面命令的输出结果(PID)作为"kill -9"命令的参数,并执行该命令。"kill -9"会强行杀掉指定进程。

其它类似的情况,只需要修改"grep LOCAL=NO"中的关键字部分就可以了。

另一种方法,使用awk

ps x|grep gas|grep -v grep |awk '{print $1}'|xargs kill -9

另:

xargs 与find 命令合用的时候,find 把匹配到得命令传递给xargs ,xargs 每次只获取一部分文件,而不是全部。分批处理。

xargs则只有一个进程、但xargs 处理是否分批 ,批次大小,也会受系统些可调参数影响。

shell命令xargs解析的更多相关文章

  1. shell命令xargs

    今天准备找出nginx非空的日志并压缩成一个文件 find . -name "meta.access.log.*" -type f -size +0k | tar -cjv -f ...

  2. shell命令getopts解析

    getopts是一条获取和处理命令行选项的语句,格式为getopts option_string variable .其中option_string中包含一个有效的单字符选项,若getopts命令在命 ...

  3. Windows命令行command的Shell命令详细解析和语法

    CMD命令大全及详细解释和语法 Microsoft Windows XP [版本 5.1.2600] 有关某个命令的详细信息,请键入 HELP 命令名 ASSOC    显示或修改文件扩展名关联. A ...

  4. mac 下使用shell 命令 jq 解析json

    官网 https://stedolan.github.io/jq/download/ 安装 brew install jq 创建json文件,file.json { , "msg" ...

  5. shell test和find命令实例解析

    shell test和find命令实例解析 下面以\build\core\product.mk相关部分来学习 define _find-android-products-files $(shell t ...

  6. 关于用python作为第三方程序,来调用shell命令的问题,以及返回值格式解析

    1.用python语言作为第三方,调用shell 在python2.x中,可以通过包commands来进行调用shell命令.如下: cmd就是你要调用的shell命令,把环境配置好,输入正确的命令格 ...

  7. xargs 主要用于不支持管道的shell命令*****

    变量置换,主要用于不支持管道的shell命令,如:rm.sed等,但有些命令需要占位符“{}”需要注意.比如:删除文件- ls|xargs -i rm -rf {} 文件改名-   ls|xargs ...

  8. Shell之Xargs命令

    目录 Shell之Xargs命令 参考 xargs命令简介 xargs命令格式 xargs实例说明 Shell之Xargs命令

  9. 解析如何在C语言中调用shell命令的实现方法【转】

    本文转自:http://www.jb51.net/article/37404.htm 1.system(执行shell 命令)相关函数 fork,execve,waitpid,popen表头文件 #i ...

随机推荐

  1. bzoj 3668 数位DP

    收获: 1.如果有很多位操作,并且不包含+-×/等高级运算,那么可以一位一位考虑,如果求一个最优解,可以尝试逐位确定,这道题因为原始攻击值有范围,那么就需要数位DP. /*************** ...

  2. URAL 1876 Centipede's Morning

    1876. Centipede's Morning Time limit: 0.5 secondMemory limit: 64 MB A centipede has 40 left feet and ...

  3. Properties属性操作

    package com.properties; import java.io.FileInputStream; import java.io.FileOutputStream; import java ...

  4. SQL(insert、delete、update)执行成功,但是数据库表中无显示无记录

    如题,程序中insert一条记录,调试过程中根据执行结果发现此条sql已经执行成功(影响行数为1且插入记录已生成自增主键正确值),但是查询数据库相应表时发现表中并无相应记录,通过直接在表中插入测试数据 ...

  5. 在MyEclipse上安装svn插件

    最近需要用到myeclipse做一个商城的项目开发,用svn作为项目的版本控制软件.但是在myeclipse上安装svn插件就是装不好,反复折腾了好几次都安装不成功.网上提供的安装办法有两种,一是:在 ...

  6. 数据是企业的无价財富——爱数备份存储柜server的初体验(图文)

    非常早就像上这样一套数据备份系统,每天採用原来的软件备份加手动备份的方式,总有些不是太方便的地方. 加上企业规模的不断扩大,系统的增多,业务数据也日显重要.容不得半点中断和数据丢失.这不,出于对系统数 ...

  7. 漫谈js自定义事件、DOM/伪DOM自定义事件

    一.说明.引言 我JS还是比较薄弱的,本文的内容属于边学边想边折腾的碎碎念,可能没什么条理,可能有表述不准确的地方,可能内容比较拗口生僻.如果您时间紧迫,或者JS造诣已深,至此您就可以点击右侧广告(木 ...

  8. 【spring boot】【log4jdbc】使用log4jdbc打印mybatis的sql和Jpa的sql语句运行情况

    在spring boot 中使用mybatis 想看到sql语句的运行情况. 虽然按照 之前说的配置了 logging.level.你的mapper包位置 = debug 但是依旧没有起作用. 所以采 ...

  9. 使用 DES 算法对数据加密

    DES算法 ☆提供高质量的数据保护,防止数据未经授权的泄露和未被察觉的修改 ☆具有相当高的复杂性,使得破译的开销超过可能获得的利益,同时又要便于理解和掌握 ☆DES密码体制的安全性应该不依赖于算法的保 ...

  10. 关于JAVA多线程并发synchronized的测试与合理使用

    在项目开发中, 或许会碰到JAVA的多线程处理, 为保证业务数据的正常, 必须加上锁机制,  常用的处理方法一般是加上synchronized关键字, 目前JDK版本对synchronized已经做了 ...