Board logo

标题: 这是不是ren的一个bug? [打印本页]

作者: bjsh     时间: 2007-4-13 22:10    标题: 这是不是ren的一个bug?

在c盘新建一个10.pdf

执行下面的两句命令;

看看最后10.pdf 被改名成了什么/

ren 10.pdf *2.c

结果为: 10.pdf2.c

ren 10.pdf *1.c

结果为1.c
作者: htysm     时间: 2007-4-13 23:03
这个“*”是通配符,能用通配符做文件名吗?
作者: bjsh     时间: 2007-4-14 04:10
ls的兄台是否不知道

ren *.pdf *.c 的妙处啊
作者: zh159     时间: 2007-4-14 05:18
两种用法根本不同
文件名和扩展名分开处理:
ren *.pdf *.c,不管文件名是什么,只改扩展名
作者: bjsh     时间: 2007-4-14 05:29
但是 *1.c和*2.c又有什么区别呢?
为什么一个是           1.c
一个却是                 10.pdf2.c
作者: kcdsw     时间: 2007-4-14 08:02

ren 10.pdf *0.c
ren 10.pdf *p.c
ren 10.pdf *d.c
不是bug

[ Last edited by kcdsw on 2007-4-14 at 08:03 AM ]
作者: bjsh     时间: 2007-4-14 09:11
谢ls的;

恍然大悟啊!!
作者: 59fei     时间: 2007-7-9 02:42
什么恍然大悟?
小弟还是不明白?
楼主能具体说说吗?
作者: bjsh     时间: 2007-7-9 08:46
59fei 收到我 短消息后 把 短消息 贴上来吧
作者: tclgb     时间: 2007-7-9 10:04
1、
ren   完整文件名   *指定完整文件名中任意字符或连续的字符串.扩展名
改文件名为:从原文件名开头通配至指定字符(串).扩展名
如:
ren 10.pdf *0.c    得 10.c
ren 10.pdf *p.c    得 10.p.c
ren 10.pdf *d.c    得 10.pd.c

2、
ren   完整文件名   *指定完整文件名非连续的字符串.扩展名
改文件名为:从原文件名开头通配至指定字符串首符+余下的字符串内容.扩展名
如:
ren 10.pdf *1p.c       得 1p.c
ren 10.pdf *0dp.c     得 10dp.c

3、
ren   完整文件名   *指定除完整文件名中任意字符(串).扩展名
改文件名为:通配完整文件名+指定字任符(串).扩展名

ren 10.pdf *mm.c    得 10.pdfmm.c

总结提有点复杂,还望兄弟们简化
:谢谢楼下的提醒,呵呵

[ Last edited by tclgb on 2007-7-9 at 10:31 PM ]
作者: slore     时间: 2007-7-9 11:29


  Quote:
3、
ren   完整文件名   *指定除完整文件名中任意字符(串).扩展名
改文件名为:通配完整文件名+指定字任符(串).扩展名

ren 10.pdf *mm.c    得 10.pdf1p.c

写错了吧?
10.pdfmm.c
作者: tyh     时间: 2007-7-9 12:55
没看懂.
作者: qinbuer     时间: 2007-7-9 13:02
想不到REN有如此妙用,加分收藏学习了。
作者: bush     时间: 2007-7-9 23:06
我的结果不一样:
ren 10.pdf *2.c

结果为: 10.c

ren 10.pdf *1.c

结果为10.c

作者: plp626     时间: 2008-4-26 22:21
眼睛都花了,什么情况下非要这么用ren?
作者: mkd     时间: 2008-4-27 21:41


  Quote:
Originally posted by bjsh at 2007-4-13 10:10 PM:
在c盘新建一个10.pdf

执行下面的两句命令;

看看最后10.pdf 被改名成了什么/

ren 10.pdf *2.c

结果为: 10.pdf2.c

ren 10.pdf *1.c

结果为1.c

ren 10.pdf *2.c

  Quote:
        *後面的第一個字是什麼?
                2

        10.pdf中有沒有這個字?
                沒有。所以,接在後面

                                10.pdf
                                         2.c

                                10.pdf2.c

ren 10.pdf *1.c

  Quote:
        *後面的第一個字是什麼?
                1

        10.pdf中有沒有這個字?
                有。從後面往前找,找到的第一個,對齊


                                10.pdf               1以後刪除
                                1.c                    1以後接上
                                1.c

ren 10010.pdf *1.c

  Quote:
        *後面的第一個字是什麼?
                1

        10010.pdf中有沒有這個字?
                有。從後面往前找,找到的第一個,對齊


                                10010.pdf               1以後刪除
                                     1.c                    1以後接上
                                1001.c

特例   ren * *.
         ren * "* "


FAT32

  Quote:
C:\TEST>cd.>123...456...789.mp3

C:\TEST>dir/b
123...456...789.mp3

C:\TEST>ren * *.

C:\TEST>dir/b
123...456...789

C:\TEST>ren * *.

C:\TEST>dir/b
123

---
C:\TEST>cd.>"123   456   789.mp3"

C:\TEST>dir/b
123   456   789.mp3

C:\TEST>ren * "* "

C:\TEST>dir/b
123

C:\TEST>for %a in (*) do @echo "%a"
"123"

NTFS

  Quote:
D:\TEST>cd.>123...456...789.mp3

D:\TEST>dir/b
123...456...789.mp3

D:\TEST>ren * *.

D:\TEST>dir/b
123...456...789

D:\TEST>ren * *.

D:\TEST>dir/b
123...456

D:\TEST>ren * *.

D:\TEST>dir/b
123

---
D:\TEST>cd.>"123   456   789.mp3"

D:\TEST>dir/b
123   456   789.mp3

D:\TEST>ren * "* "

D:\TEST>dir/b
123   456

D:\TEST>for %a in (*) do @echo "%a"
"123   456"

D:\TEST>ren * "* "

D:\TEST>dir/b
123

D:\TEST>for %a in (*) do @echo "%a"
"123"

[ Last edited by mkd on 2008-4-28 at 05:42 PM ]
作者: wlc001     时间: 2009-12-4 20:28
很奇妙的东西!
作者: fengwuxzg     时间: 2009-12-6 14:06
恍然大悟啊!!
作者: coolbug     时间: 2010-3-25 16:29
神奇啊。。