文章目录
楔子
学习记录笔记,能力有限,希望不要误导大家
1 xargs
1.1 查找拷贝文件|查找解压文件
注意 使用-n -f 即可
查找输出|-n参数指定每次将多少项,作为命令行参数。
find -type f -name "*.gz"|xargs -n 1
查找拷贝到 当前文件夹tt目录中|如果xargs要将命令行参数传给多个命令,可以使用-I参数 |如下 把fs作为了参数
find -type f -name "*.gz"|xargs -n 1 -I fs cp fs tt/
查找解压
find /opt/tar/ -name "*.gz" |xargs -n 1 tar xzvf
-n -f 参数解释
可以参考 阮一峰 xargs 命令教程
- n:-n参数指定每次将多少项,作为命令行参数。
- I :如果xargs要将命令行参数传给多个命令,可以使用-I参数。-I指定每一项命令行参数的替代字符串。
复制创建文件夹
--拷贝文件到日期目录
echo 202004{07..10}|xargs -n 1|xargs -I ID sh -c 'cp *_日报_ID.xlsx ID/'
-- 复制
echo {13..17}|xargs -n 1|xargs -I ID sh -c 'cp 日报_20200410.xlsx 日报_202004ID.xlsx'
-- 新建文件夹
mkdir 202004{13..17}
3 文件重命名
3.1 准备测试文件
echo {01..81}|xargs -n 1|xargs -I ID sh -c ' sleep 5;curl -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.69 Safari/537.36 Edg/81.0.416.34" --referer https://www.mzitu.com/213225/2 https://i3.mmzztt.com/2019/11/25bID.jpg -o ID.jpg'
3.2 替换为日期文件
从命名文件|加上年月日
ls | xargs -I ID sh -c 'mv ID `date +%F`-ID'
3.3 图片替换名字
2020变成图片
ls |xargs -n 1| xargs -I ID sh -c 'mv -v ID $(echo ID |sed 's/2020/图片/') '
CURL批量下载网络图片
echo {01..66}|xargs -n 1|xargs -I ID curl --referer https://www.mzitu.com/214337 https://i5.meizitu.net/2019/12/ID24.jpg -o ID.jpg
echo {01..66}|xargs -n 1|xargs -I ID sh -c ' sleep 5;curl --referer https://www.mzitu.com/214337 https://i5.meizitu.net/2019/12/IDb24.jpg -o ID.jpg'
echo {1..19}|xargs -n 1|xargs -I ID sh -c 'curl https://mtl.gzhuibei.com/images/img/18859/ID.jpg -o ID.jpg'
echo {001..83}|xargs -n 1|xargs -I ID sh -c ' sleep 1;curl --referer https://www.nvshens.net/g/31724/14.html https://t1.onvshen.com:85/gallery/22162/31736/s/ID.jpg -o ID.jpg'
---设置用户代理|https://www.cnblogs.com/hujiapeng/p/8470099.html
echo {01..81}|xargs -n 1|xargs -I ID sh -c ' sleep 5;curl -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.69 Safari/537.36 Edg/81.0.416.34" --referer https://www.mzitu.com/213225/2 https://i3.mmzztt.com/2019/11/25bID.jpg -o ID.jpg'
curl -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.69 Safari/537.36 Edg/81.0.416.34' -e https://www.mzitu.com/213225/2 https://i3.mmzztt.com/2019/11/25b02.jpg -o ID.jpg
date
-F 输出长格式字符年月日
date +%F --> 2017-08-02
-y 输出短格式字符
date +%y-%m-%d -->17-08-02
-H-M-S: 输出时分秒
date +%y-%m-%d\ %H-%M-%S -->17-08-02 21-16-14
date +%y-%m-%d\ %H:%M:%S -->17-08-02 21:16:14
-h 输出月份
-T: 直接时分秒
date +%F\ %T --> 2017-08-02 21:18:14
-w: 显示今天星期几
date +%w 星期三
-d: 提前/推迟显示天数
date +%F -d "-1day" 2017-08-01
date +%F 2017-08-02
date +%F -d "+1day" 2017-08-03
date +%F\ %H:%M:%S -d "+2hour 2min 2sec" 2017-08-02 23:40:49 -->提前2小时2分2秒
date +%F\ %H:%M:%S 2017-08-02 21:38:47
date +%F\ %H:%M:%S -d "-2hour -2min -2sec" 2017-08-02 19:36:45 -->推迟2小时2分2秒
找出最大的10个文件
find . -type f -exec du -k {} \; | sort -nrk 1 | head