awk之shell快速修改文件名
场景:假调你的目录下有多个类似这样的文件
1.jpg?v=1
2.jpg?v=2
3.jpg?v=3
4.jpg?v=4
如果快带的将文件的?v=x去掉呢?
方法一:直接写命令实现 利用awk调shell命令实现
ls | awk '{split($0,file,"?");for(key in file){if(key==1)continue;cmd="mv "$0" "file[1];system(cmd)}}'
方法二:写.sh脚本
#!/bin/bash
for i in `ls`
do
if [ "$i" == "do.sh" ]
then
continue
fi
newname=`echo $i | awk '{gsub("?"," ");print $1}'`
echo "mv $i $newname"
mv $i $newname
done
这两种方法其实是一种实现思路,可以根据自已喜好进行选择
PHP中常见的问题点,知识点,及盲点。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步