Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Групповое переименование 
Author Message
Serge Yolkin



PostPosted: Wed Oct 24, 2012 02:51    Post subject: Reply with quote

Немного не в тему, но вот скрипт, упрощенные версии которого я предлагал выше (принимает параметр %S)
Code:
<?xml version="1.0" standalone="yes" encoding="utf-8"?>
<job id="ren" version="0.4">
  <object id="f" progid="Scripting.FileSystemObject" />
  <script type="text/jscript" language="JScript"><![CDATA[
    var n=[],o;
    for(var i=0;i<WScript.Arguments.length;i++){
      o=fo(WScript.Arguments(i));
      if(o&&fm(o))fr(o,fo(n[n.length-1]));
    }
    function fm(e){
      var t=fn(e);
      if(n.join('?').match(e.name))return false;
      else n[n.length]=t;
      return true;
    }
    function fn(e){
      var t=e.name;
      if(t.substring(t.length-4)=='.bak')return(t.substring(0,t.length-4));
      else return(t+'.bak');
    }
    function fo(e){
      if(f.fileExists(e))return(f.getFile(e));
      else if(f.folderExists(e))return(f.getFolder(e));
      else return false;
    }
    function fr(x,y){
      if(y){
        var r=Math.random(),t=x.name;
        x.name=r;
        y.name=t;
      }x.name=n[n.length-1];
    }
  ]]></script>
</job>
Переименовывает файлы/папки добавляя (или убирая, если уже есть) расширение .bak. Особенности:
1. Допустим, есть два файла name и name.bak - скрипт поменяет их местами во всех трёх случаях: а). если передать ему name; б). если передать name.bak и в). если передать оба файла (двойного переименования не будет).
2. Допустим, есть папка name и файл name.bak - скрипту пофиг, где файл, а где папка, всё равно переименует (поменяет имена местами) и то, и другое.
Область применения - переточка проектов из нескольких связанных файлов, например, русификация (но не только). Если изменённые файлы/папки имеют неизменённые backup (bak) копии, можно быстро переключаться между двумя вариантами: выделяем файлы по расширению .bak и выполняем скрипт.
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group