写一个有重命名的脚本,如何让它在遇到同名文件自动重命名?

sh/bash/dash/ksh/zsh等Shell脚本
回复
ssawee
帖子: 59
注册时间: 2009-08-25 9:16

写一个有重命名的脚本,如何让它在遇到同名文件自动重命名?

#1

帖子 ssawee » 2009-08-25 9:58

写一个有重命名的脚本,如何让它在遇到同名文件自动重命名?
头像
O_O_BOT
帖子: 2461
注册时间: 2009-05-20 19:32

Re: 写一个有重命名的脚本,如何让它在遇到同名文件自动重命名?

#2

帖子 O_O_BOT » 2009-08-25 10:07

filename=$base_name
while [ -e "$filename" ];do
filename=$base_name-$i
((i++))
done
touch "$filename"
irc 聊天室
ubuntu-cn 的irc 频道为
irc.ubuntu.com 8001 #ubuntu-cn
UTF8编码 可用 irssi xchat pidgin weechat 登录

http://webchat.freenode.net/?channels=ubuntu-cn
[url]irc://irc.freenode.net/ubuntu-cn[/url]
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 写一个有重命名的脚本,如何让它在遇到同名文件自动重命名?

#3

帖子 eexpress » 2009-08-25 11:02

练习脚本?
如果不是,去用thunar的重命名吧。
否则,用rename也可以。
● 鸣学
tusooa
帖子: 6548
注册时间: 2008-10-31 22:12
系统: 践兔
联系:

Re: 写一个有重命名的脚本,如何让它在遇到同名文件自动重命名?

#4

帖子 tusooa » 2009-08-25 12:14

代码: 全选

#!/bin/bash
#
[ -f $1 ] || exit 1
i=0

to_f=$2
while [ -f $to_f ]
do
    to_f=$2-$i
    ((i++))
done
mv "$1" "$to_f"
exit 0

代码: 全选

] ls -ld //
回复