春風博客

          春天里,百花香...

          導航

          <2007年6月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          1234567

          統計

          公告

          MAIL: junglesong@gmail.com
          MSN: junglesong_5@hotmail.com

          Locations of visitors to this page

          常用鏈接

          留言簿(11)

          隨筆分類(224)

          隨筆檔案(126)

          個人軟件下載

          我的其它博客

          我的鄰居們

          最新隨筆

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          一個用于桌面文件整理的JS腳本

          我在工作過程中一般習慣把一些如代碼段,文,下載文件檔和圖片等臨時文件放在桌面上,這樣能更方便一些,但是時間一長就容易積聚很多文件,密密麻麻的,刪了吧又怕以后某時能用到,再找或者重做一個都很花時間,何況有些是不可恢復的.

          為了解決這個問題,本人用微軟的JS(非JavaScript,雖然語法很像)制作了一個腳本放在桌面上,感覺桌面文件過多時就可以選上拖曳到這個腳本上,它會按日期把選上的文件自動存放到一個備份目錄里,這樣找起來就方便了,也不會丟失重要信息,如果實在沒用再刪除備份中的目錄或文件就可以了.

          下面就是這個文件的代碼,如果需要使用的話拷貝這段進入寫字板,在另存為**.js的文件,放在桌面上即可使用,其中backupRoot清修改成你需要備份桌面文件的目錄.

          或者從這里下載:
          http://www.aygfsteel.com/Files/sitinspring/deskSweep.rar

          var backupRoot="E:\\Backup\\";// The folder you backup files
          var target = backupRoot+getCurrTime()+"\\";// subfolder under backupRoot

          var fso = WScript.CreateObject("Scripting.FileSystemObject"); 
          if(!fso.FolderExists(target))
              fso.CreateFolder(target); 
          }
           

          var args = WScript.Arguments; // Command arguments
          var movedNum=0;

          for(var i=0;i<args.length;i++)
              storeFile(args(i),target);
          }
           

          WScript.Echo(movedNum.toString()
          +" Files have been backup to folder:"+target); 

          function storeFile(file,storeDir){
              
          try{
                  
          if(fso.FileExists(file)) 
                      fso.MoveFile(file,storeDir); 
                  }
           
                  
          else if(fso.FolderExists(file)) 
                      fso.CopyFolder(file
          +"*",storeDir); 
                      fso.DeleteFolder(file);            
                  }
           
                  
                  movedNum
          ++;
              }

              
          catch(e){
                 WScript.Echo(file
          +" can't be backup to folder:"+target);     
              }

          }


          function getCurrTime()
              
          var d, s = "";                                // 聲明變量。
              d = new Date();                         // 創建 Date 對象。
              s += d.getYear()+ "-";               // 獲取年份。
              s += (d.getMonth() + 1+ "-";   // 獲取月份。
              s += d.getDate() ;                        // 獲取日。
            
              
          return(s);                                        // 返回日期。
          }
           

          posted on 2007-06-21 23:43 sitinspring 閱讀(1835) 評論(8)  編輯  收藏

          評論

          # re: 一個用于桌面文件整理的JS腳本 2007-06-22 00:37 風之幻想

          對你這個腳本程序很感興趣,可否能詳細注釋一下,本人是剛剛出道,wxj120bw@yahoo.com.cn  回復  更多評論   

          # re: 一個用于桌面文件整理的JS腳本 2007-06-22 01:47 mlhorizon

          樓主的腳本有點小問題
          getMonth()得到的是0-11的值,與我們習慣的月份表示方法不同,建議+1
          getDay()得到的是星期幾,應該為getDate
          而且時分秒沒有什么太多的必要吧,每天備份為一個文件夾就ok了,太多了反而不好管理了  回復  更多評論   

          # re: 一個用于桌面文件整理的JS腳本[未登錄] 2007-06-22 08:44 云帆

          思想不錯:)
            回復  更多評論   

          # re: 一個用于桌面文件整理的JS腳本 2007-06-22 09:48 小改動一下

          對幾個問題小改動了一下。
          1.Backup文件夾不存在時;
          2.保存目錄的日期以及去除時分秒;
          3.彈出對話框的內容;

          時間有限,沒加注釋。

          var backupRoot = "E:\\Backup\\";
          var target = backupRoot + getCurrTime() + "\\";

          var fso = WScript.CreateObject("Scripting.FileSystemObject");
          if (!fso.FolderExists(backupRoot)) {
          fso.CreateFolder(backupRoot);
          }

          if(!fso.FolderExists(target)){
          fso.CreateFolder(target);
          }

          var args = WScript.Arguments;
          var movedNum = 0;

          for (var i = 0; i < args.length; i++) {
          storeFile(args(i), target);
          }

          if (movedNum == 1) {
          WScript.Echo(movedNum.toString() + " file has been backuped to foder:" + target);
          } else if (movedNum > 1) {
          WScript.Echo(movedNum.toString() + " Files have been backuped to folder:" + target);
          }

          function storeFile(file,storeDir) {
          try{
          if(fso.FileExists(file)) {
          fso.MoveFile(file, storeDir);
          } else if (fso.FolderExists(file)) {
          fso.CopyFolder(file + "*", storeDir);
          fso.DeleteFolder(file);
          }

          movedNum++;
          }

          catch(e){
          WScript.Echo(file + " can't be backuped to folder:" + target);
          }
          }

          function getCurrTime(){
          var d = new Date();

          var retval = "";
          retval += d.getYear()+"-";
          retval += formatNum(d.getMonth() + 1) + "-";
          retval += formatNum(d.getDate());
          return(retval);
          }

          function formatNum(num){
          var retval = num.toString();

          if(retval.length < 2){
          return "0" + retval;
          } else{
          return retval;
          }
          }  回復  更多評論   

          # re: 一個用于桌面文件整理的JS腳本 2007-06-22 10:59 sitinspring

          @mlhorizon:

          你的建議不錯,我改動了一下。
            回復  更多評論   

          # re: 一個用于桌面文件整理的JS腳本 2007-06-22 23:15 pass86

          強烈支持,真是太使用了,而用了JS解決,高。  回復  更多評論   

          # re: 一個用于桌面文件整理的JS腳本 2007-06-24 22:14 sitinspring

          @風之幻想

          http://www.aygfsteel.com/Files/junglesong/wsh.rar

          這個是微軟發布了WSH手冊,看看就都明白了.  回復  更多評論   

          # re: 一個用于桌面文件整理的JS腳本 2007-06-25 11:50 風之幻想

          謝謝饋贈,呵呵  回復  更多評論   


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          sitinspring(http://www.aygfsteel.com)原創,轉載請注明出處.
          主站蜘蛛池模板: 白山市| 常山县| 宁强县| 景谷| 宁乡县| 邢台市| 南安市| 永寿县| 礼泉县| 出国| 高清| 独山县| 稻城县| 江达县| 莫力| 浪卡子县| 定日县| 衡阳市| 扶余县| 克山县| 桑日县| 平凉市| 内江市| 崇仁县| 宿迁市| 师宗县| 乌兰察布市| 钦州市| 临海市| 陇西县| 调兵山市| 吉木乃县| 岗巴县| 灵寿县| 烟台市| 上高县| 遵义市| 水城县| 皋兰县| 文山县| 惠水县|