永发信息网

shell中如何使ls -l $1 |awk '/^d/ {print $NF}'|grep -i .war查到的结果重命名成没有.war的目录名

答案:2  悬赏:40  手机版
解决时间 2021-01-27 17:58
如:
#ls
aa.war bb.war cc dd
#ls -l $1 |awk '/^d/ {print $NF}'|grep -i .war
aa.war bb.war
想要将筛选出来的目录aa.war bb.war重命名成aa bb请问如何实现?
以下是我写的一个函数
function lookup(){
i=0
list=()
for j in `ls -l $1 |awk '/^d/ {print $NF}'|grep -i .war`
do

list[$i]="$j"
i=`expr $i + 1`
done
return 0
}
echo ${list[@]}
最佳答案
function rename(){
while read Line
do
echo mv $Line ${Line%.war}
# mv $Line ${Line%.war}
done
}
find -type d |grep "[.]war"|rename实际运行时把注释行的注释取消。

使用 find 命令来获取文件夹路径,rename 自定义函数完成重命名。
重命名的重点是 while  read Line 循环, 不停的从标准输入读取行。每行对应一个文件
${Line%.war}  其中%号 表示 从后面删除 最短的匹配。
更详细的${} 扩展用法可以在 man bash 中查询Parameter Expansion章节。
全部回答
我。。知。。道 加。。我。。私。。聊
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
滕州市姜屯镇前郝幼儿园怎么去啊,我要去那办
出版社管理信息化的作用是()。A.提高出版社经
马可波罗磁砖平价店地址在哪,我要去那里办事
下面的电路图有哪些错误和需要改动地方?载货
想知道: 太原市 新建路水西关南口街 在哪
匦旌的意思是什么啊?知道的请说下!
实在没钱了该咋办呢?
滕州市官桥镇东康庄村幼儿园地址在什么地方,
从合肥到江苏徐州,走高速的详细费用,以及走
沈丘县周口速8酒店在什么地方啊,我要过去处
家宝瓷砖地址在什么地方,想过去办事
滕州市柴胡店镇坦山后幼儿园地址在什么地方,
魅族pro6s在专卖店卖多少钱
佛山九江到佛山高明多远
【苏幕遮碧云天】宋词:(苏幕遮)(碧云天)
推荐资讯
日日顺物流服务中心(前景路与石城大街交叉口
入局的意思是什么啊?知道的请说下!
医疗器械里面是否有个仪器叫神灯?
广本汽车常规保养项目有哪些
躁趍的意思是什么啊?知道的请说下!
如果仓储合同当事人对储存期间没有约定或者约
梦见被人追赶逃跑然后又被抓了
dnf小霸王和卑劣哪个好
买进口车入户费用贵吗?
电子商务系统平台不包括()。
高达系列中被称为里程碑神作的是哪一部?
武汉市哪里有GAP专卖
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?