#!/bin/bash
function change()
{
ls -l > /home/wang/ab.txt #重定向
sed -i '1d' /home/wang/ab.txt
cat /home/wang/ab.txt >> /home/wang/b.tx
while read line #读取每一行
do
t=${line:0:1} #截取文件类型
#echo $t
b=${line##*' '} #截取文件全名
if [ "$t" != "d" ];then
c=${b%.*} #截取文件名
d=${b##*.} #截取文件后缀名
a=${line#*' '}
a=${a#*' '}
a=${a%%' '*} #从目录中截取所有者名
mv $b $c[$a].$d
else
cd $b
change
fi
done < /home/wang/b.txt
}
if [ $# -eq 1 ];then
cd $1 #如果有参数,则进入目录
fi
change
exit
程序的功能是递归进入目录,把文件名后缀前加上所有者的名字,如a.txt,改为a[owner].txt,是递归也就是如果目录里边还有目录,要进去
这个程序为什么会死循环啊,求教。》》
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
悬赏问题
- ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
- ¥20 腾讯企业邮箱邮件可以恢复么
- ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
- ¥15 错误 LNK2001 无法解析的外部符号
- ¥50 安装pyaudiokits失败
- ¥15 计组这些题应该咋做呀
- ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
- ¥15 让node服务器有自动加载文件的功能
- ¥15 jmeter脚本回放有的是对的有的是错的
- ¥15 r语言蛋白组学相关问题