在linux里面怎么将当前目录下的文件全部重命名成,bak文件并放在另个一目录下的呢? 5

 我来答
xiajingtj
推荐于2016-02-05 · TA获得超过120个赞
知道答主
回答量:55
采纳率:0%
帮助的人:54.1万
展开全部
mkdir t31415 #建立目标目录
for file in *;do
if [ -f "$file" ];then
cp $file ./t31415/${file}.bak
fi
done

例如将以上内容保存为文本文件,如test.sh,然后拷贝到备份文件所在目录,在shell中执行bash test.sh。要备份的文件将被拷贝到子目录t31415下。没有压缩,只是拷贝,cp也可改用zip或rar等压缩命令。
开心且清馨丶君子兰
2011-04-12 · TA获得超过791个赞
知道小有建树答主
回答量:569
采纳率:100%
帮助的人:426万
展开全部
你的要求是不是重命名并移动文件,看下面一条命令
ls|awk '{ printf("mv %s /目标路径/%s.bak\n",$1,$1)}'|sh
注意.1其中/目标路径/替换成你要的路径
2.路径目录必须存在,先mkdir好
3.当前目录下面必须没有子目录.否则子目录也会别重命名移走
4.你的ls命令没有被alias重新定义,意思是执行ls的结果想下面的格式一样,一行一个文件名.
shg>ls
bin
duanxin.txt
sbin

如果满足上面条件,回车后,将能按照你的要求将文件处理.不满足的话请将[ xiajingtj]回答中的cp换成mv,即可.用谁的答案都先找垃圾文件测试一下. 数据无价
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式