This commit is contained in:
2021-11-14 14:32:08 +08:00
parent f75ad8bedd
commit b0f6120151
152 changed files with 22219 additions and 8 deletions

41
content/post/xargs.md Normal file
View File

@@ -0,0 +1,41 @@
---
title: "xargs 命令"
date: 2019-10-29T18:43:36+08:00
lastmod: 2019-10-29T18:46:00+08:00
keywords: []
tags: ["shell", "xargs"]
categories: ["shell"]
---
# 基本使用
- 把标准输入转换成命令行参数,传递给 xargs 后的命令使用
```bash
echo 'one two three' | xargs mkdir
# 等于
mkdir one two three
```
- 默认命令 echo
```bash
seq 1 8 | xargs
# 等于
seq 1 8 | xargs echo
```
- -d 指定分隔符,默认是换行和空格
```bash
echo -e "a\tb\tc" | xargs -d "\t" echo
```
- -p 打印出要执行的命令,并询问用户是否执行
- -t 打印出要执行的命令,直接执行
- -0 指定 null 当作分隔符,一般用于分隔包含空格的字符串列表
```bash
find /path -type f -print0 | xargs -0 rm
```
- -L 指定标准输入中的多少行作为一个参数
- -n 一行中可能包含空格分隔的多项,该参数指定每次将多少项作为命令行参数
- -I 指定每一项命令行参数的替代字符串
```bash
seq 1 8 | xargs -I PAT echo PAT
```
- -P 指定同时使用多少个进程执行命令默认只用一个0 表示不限制
- --show-limits 查看系统命令行缓冲上限