创作人 Leo
编辑时间 Tue Apr 6,2021 at 12:24
xargs 命令将管道传过来的数据一次次作为参数调用指定命令
例:批量删除 redis key
Last login: Wed Jul 29 12:31:53 on ttys007
$ redis-cli -h 127.0.0.1 -n 0 keys "name:*"
1) "name:leo"
2) "name:lucy"
$ redis-cli -h 127.0.0.1 -n 0 keys "name:*"| xargs redis-cli -h 127.0.0.1 -n 0 del
(integer) 2
$ redis-cli -h 127.0.0.1 -n 0 keys "name:*"
(empty array)
$ redis-cli -h 127.0.0.1 -n 0 keys "age:*"
1) "age:lucty"
2) "age:leo"
$
例:批量查看文件
$ ls -al
total 40
drwxr-xr-x 7 bitz staff 224 7 29 13:31 .
drwx------+ 93 bitz staff 2976 7 29 12:29 ..
-rw-r--r-- 1 bitz staff 4 7 29 12:30 1
-rw-r--r-- 1 bitz staff 4 7 29 12:30 2
-rw-r--r-- 1 bitz staff 4 7 29 12:30 3
-rw-r--r-- 1 bitz staff 6 7 29 12:30 t
$ cat 1
111
$ cat t
1
2
3
$ cat t|xargs cat
111
222
333
$
cat ids.txt | xargs -I id src/redis-cli CANCELORDER 10087 id 1 127.0.0.1