苹果在线 [设为首页]
[加入收藏]
[订阅RSS]
首页新闻软件应用iPadiOS iPhone iPad软件下载iPhone苹果专卖店苹果软件下载中心苹果搜索苹果维修苹果在线官方微博北京企业宣传片制作公司苹果论坛BBS
首页 > 苹果软件下载 > 系统程序 > 压缩备份 > 跟我学CMD实战系列之二 ——数据压缩备份
跟我学CMD实战系列之二 ——数据压缩备份
授权形式: 正式版
更新时间: 2019-12-01 16:05:40
软件语言: 简体中文
软件平台:
软件类别: 国外软件
文件大小: 未知
评论等级: ★★★☆☆
浏览次数: (今日:,本周:,本月:

下载地址
软件简介

跟我学CMD实战系列之二 ——数据压缩备份

  朝闻道,夕可死矣!为了成为IT高手,为了挽回我失去的青春,也为了我亲爱的家人,下决心刻苦学习编程知识,虽九死而不悔! 金头盔飞行员蒋佳冀:知道了不行,熟悉也不够,要真正进入潜意识,成为条件反射才行。

  Posts - 7269 Articles - 10 Comments - 373

  每天下班时,将本地硬盘上的projects目录压缩为rar文件,文件名中必须含有当天日期信息,例如projects_20070902.rar.

  2. 难点是如何生成含有当天日期的文件名,date可以输出当天日期,但如何转换为20070902这种格式需要一定技巧。

  首先要解决的是怎么调用rar.exe来压缩文件。rar.exe在WinRAR安装目录下,复制一个过来即可。使用前可以先用rar /?看看help, 但千万别被这么多参数吓坏,我们只要学会最简单的就行。网上搜搜例子,自己再试验试验,不难写出下面的压缩命令:

  至此,我们已经知道如何调用rar.exe来压缩文件,同时掌握了backup.lst和exclude.lst文件的使用,想要备份什么以及不想备份什么,一切已经尽在掌握中^o^

  接着要解决是需求中的难点:如何生成含有当天日期的文件名。这个问题在稍微高级一点的语言中都不是问题,但在纯CMD命令行下,还真没有方便便捷的法门,我们得来点曲线救国,先date一下:

  通过date命令可以输出日期字符串,但怎样才能将这个字符串赋值给一个变量呢?回想我们实战系列一里学会的九阴真经,或许我们可以先用date /T date.txt将日期输出到文件,再用for来读取:

  执行后,字符串已经保存到str变量中。 for真真不愧为九阴真经,那一挥刀之间的潇洒,获取永世的强大

  上面的脚本执行后将输出 2007/09/02,与我们的目标格式 20070902 只一步之遥了。进一步处理对for来说简直牛刀小试也:

  到了黄山脚下,没有不登顶的道理。结合实战一中的rar命令,来个一鼓作气:

  哇,运行上面的脚本,那雪白的字符,像天上的浮云一样漂亮的从窗口飘过。我for故我强,我强故我笑,叹老毛已老,试问天下英雄,谁敢与for争锋?

  古人思美女,有个绝佳的描述:“求之不得,寤寐思服,悠哉悠哉,辗转反侧”。上面仗着强大的for经,我们山路十八弯般的看似潇洒其实痛苦的把问题解决了。但那真实的直觉却告诉我:一定存在更简单优雅的方法。辗转反侧之余,且先打个游戏轻松轻松。游戏里mm的画风真不错,小桥流水清风拂面,山泉叮咚灵感飘飘

  原来%date%就可以获取到当前日期,我们前面居然搞出一个date.txt文件读来读去,实在要羞愧死了

  哇,一直以为九阴真经无敌天下,却不料江湖中还有如此强大的功夫。先不论孰强孰弱,我们先来看看这本九阳真经:

  简言之,set命令的作用是显示、设置或删除cmd.exe的环境变量。简单对比的话,可以将set理解成vbs里的dim, 或是js里的var. set的一般性用法在上面的经书中已经讲得很详细了。在这里我想引用中国DOS联盟论坛Will Sort的一篇文章来介绍set命令中最难理解的延迟扩展:

  关于环境变量延迟扩展,使用set /?可以查看到部分说明,不过考虑到其粗劣的翻译水平,建议在查看之前,首先chcp 437切换为英文查看原英文说明。鉴于文中已说得十分详尽,而且有数个代码示例,应该不难理解。在此仅略作一些补充。

  在许多可见的官方文档中,均将使用一对百分号闭合环境变量以完成对其值的替换行为称之为“扩展(expansion)”,这其实是一个第一方的概念,是从命令解释器的角度进行称谓的,而从我们使用者的角度来看,则可以将它看作是引用(Reference)、调用(Call)或者获取(Get)。

  而命令解释器是扩展环境变量的行为大致如下:首先读取命令行的一条完整语句,在进行一些先期的预处理之后,命令被解释执行之前,会对其中用百分号闭合的字符串进行匹配,如果在环境空间中找到了与字符串相匹配的环境变量,则用其值替换掉原字符串及百分号本身,如果未得到匹配,则用一个空串替换,这个过程就是环境变量的“扩展”,它仍然属于命令行的预处理范畴。

  而一条“完整的语句”,在NT的命令解释器CMD中被解释为“for if else”等含有语句块的语句和用“& && ”等连接起来的复合语句。

  因此,当CMD读取for语句时,其后用一对圆扩号闭合的所有语句将一同读取,并完成必要的预处理工作,这其中就包括环境变量的扩展,所以在for中的所有语句执行之前,所有的环境变量都已经被替换为for之前所设定的值,从而成为一个字符串常量,而不再是变量。无论在for中将那些环境变量如何修改,真正受到影响的只是环境变量空间,而非for语句内部。

  而为了能够在for语句内部感知环境变量的动态变化,CMD设计了延迟的环境变量扩展特性,也就是说,当CMD读取了一条完整的语句之后,它不会立即执行变量的扩展行为,而会在某个单条语句执行之前再进行扩展,也就是说,这个扩展行为被“延迟”了。

  延迟环境变量扩展特性在CMD中缺省是关闭的,开启它的方法目前有两个:一是CMD /vn,它会打开一个新的命令行外壳,在使用exit退出这个外壳之前,扩展特性始终有效,常用于命令行环境中;二是setlocal EnableDelayedExpansion,它会使环境变量的修改限制到局部空间中,在endlocal之后,扩展特性和之前对环境变量的修改将一同消失,常用于批处理语句中。

  上面的脚本能用来统计目录下的文件和目录总数,如果不打开延迟扩展,在for循环中将无法递增n.

  好了,罗马不是一日建成的,如果上面的概念暂时没看懂,可以先记着有这样一本经书来查阅就可以了。我们言归正题,看看用set如何来解决我们最初的问题:

  原来费劲周折好不容易通过for才获取到的日期字符串,现在用set一句话就搞定了^o^

  在程序员的世界里,经常面临着各种争议和多种选择,像C++和C#的兄弟打架,C#和Java长久宿怨,还有php、asp、jsp等各种脚本语言之间的争风吃醋,这些争吵喧闹一定程度上促进了大众对这些语言的了解以及这些语言自身的发展。但如果因为精通某种语言或技术,就一味的只用这一种语言或技能来解决所有问题,在很多时候这是不明智的。在实战系列一中我极力推销和强调for的强大功能,for虽强大,但有它的适用范围,一味滥用就会导致此系列实战二中的费力不讨好。在这里,set明显比for好用^o^

  对各种语言技能,对各种工具,我们应该尽量先有个初略的大体了解,然后解决具体问题时,再挑选最合适的工具来做,这往往能事半功倍。




苹果软件下载

相关下载
软件下载重要说明:
      *本网站苹果软件版权归作者所有。本软件由网上搜集整理,本站不承担任何技术及版权问题;在本站下载任何软件仅提供学习参考,不得用于商业用途,请在下载后在24小时内删除;本站不保证软件的完整性和是否隐含病毒,请自行调试及杀毒,如不同意本条款请勿使用,谢谢合作!
      * 注意:同一IP地址只能同时下载一个软件。可以在任一PC、MAC机上下载本网软件。可以使用加速下载软件下载,如PC的迅雷、Flashget,MAC的SpeedDownloadiGetter等来加速下载速度。
      * 对于有些网友反应直接点击下载一些超过500MB的文件下载时,下载一部分经常断掉的情况,可以使用加速下载软件下载,如PC的迅雷、Flashget,MAC的SpeedDownloadiGetter等来加速下载速度。
    * 常见下载后的扩展名是.sit、.sitx、.hqx、.dmg、bin、zip等,其中.sit、.sitx、.hqx、zip可以用Stuffit Expander解压。
      * 由于用Safari下载本网软件经常下载出现问题,所以本网不支持Safari下载软件,建议使用MacOSX系统的FireFox浏览器浏览下载本网软件。使用Microsoft的Intelnet Explorer下载的部分文件扩展名是以.php为结尾的,正常情况下,下载完成后Stuffit Expander可以自动打开并解压,若没有自动解压,将.php改为.sit,手动打开Stuffit Expander解压。如果还不能解压,则有可能是MacOSX中使用的文件格式.dmg, .dmg文件只能在Mac OS X系统中使用。
      * 如果下载的是.torrent后缀的文件,则是我们提供的BT种子,解压后还需要使用BT下载工具如:BitTorrent下载。
      * 如果您发现该苹果软件不能下载,请通知管理员QQ 1525417718,谢谢
      * 软件使用交流请到论坛讨论
站内搜索
填写您的邮件地址,订阅我们的精彩内容:
百度站内搜索
我要投稿
推荐下载
 

常用苹果软件下载
qq movie firefox software bt adult
苹果版QQ MAC优化大师 FireFox浏览器 解压软件 苹果BT下载工具 苹果刻录工具
ipod movies photo tools speed movies
iPod+iTunes 视频播放软件 苹果看图软件 PP浏览器 iGetter下载加速 QuickTime
mac
北京苹果专卖店
企业宣传片广告片制作公司上广传媒
企业宣传片>>
企业宣传片摄制
公司专题片制作
产品教学片拍摄
展会宣传片制作
高清宣传片制作
企业宣传片欣赏
公司年会晚会片
栏目包装>>
电视栏目包装
栏目整体包装
公司形象包装
电视节目包装
影视后期制作
电视频道包装
栏目包装策划
广告片>>
电视广告片摄制
公司广告片摄制
广告片策划制作
医药广告片制作
TVC 形象广告片
影视广告片下载
播客闪客广告片
三维动画>>
三维动画制作
建筑动画制作
投标动画制作
全景仿真制作
虚拟现实动画
Flash2D动画
房地产3D动画
摄像摄影>>
专业会议摄像摄影
央视摄像师摄像机
企业年会摄像摄影
产品广告拍照摄像
晚会活动摄像摄影
索尼松下专业器材
广角灯光摇臂轨道
批量压盘刻录>>
光盘批量压盘刻盘
DVD/VCD光盘制作
名片异型光盘制作
光盘丝印胶印印刷
光盘打印封面制作
各种展会资料光盘
电子图书电子杂志
其它业务>>
视频教学片制作
网站建设及设计
多媒体光盘制作
平面设计和包装
印刷制版和装订
Flash动画制作
招聘影视精英