批量删除,拒绝手工

2017-09-07 王明 爬虫俱乐部 爬虫俱乐部

大大大大大新闻————自公众号推送视频讲解环节以来,深受广大读者朋友的喜爱。近日向我们提问的粉丝也是大幅增加呐!为了便捷管理相关信息,提高工作效率,我们对提问方式做了略微调整哟~提问者需点击推文底部“阅读原文”下载爬虫俱乐部用户问题登记表并按要求填写后发送至邮箱statatraining@163.com,我们会及时为您解答哟~



上一次温州会议,有一位学员问怎么批量删除文件和文件夹。批量删除文件这种小事怎么能难倒无所不能的stata君呢?小编这就给大家带来三种不同的方法。

首先,我们分别生成5个文件夹,文本文档,excel文件,dta文件。《批量处理——输出文件名到文本文档》中有详细介绍,小编在这里就不再赘述了。键入以下命令:

clear

set more off

cap mkdir e:/sample/

cd e:/sample/

sysuse auto,clear

forvalue i = 1(1)5 {

     cap mkdir e:/sample/文件夹`i'

     outsheet using temp`i'.txt,replace

     export excel using temp`i'.xls,replace

     save temp`i'.dta,replace

}

运行结果如下:

我们可以在e:/sample中看到:

那么问题来了,如何删除文件夹sample中的文件和文件夹呢?

小编给大家带来了三种方法。

初级式

在stata中,删除文件夹我们用rmdir命令。rmdir的作用和语法描述如下:

删除文件我们用erase命令。erase的作用和语法描述如下:

让小编用例子给大家带来rmdir和erase的直观反应。我们运用这两个命令加上循环就可以完美删除上面创造的文件和文件夹。我们键入以下命令:

forvalue i = 1(1)5 {

     rmdir e:/sample/文件夹`i'

     erase temp`i'.txt

     erase temp`i'.xls

     erase temp`i'.dta

}

运行结果如下:

sample文件夹里的文件和子文件夹都被删除了。

中级式

天下武功唯快不破,最强武功的莫过于在dos命令中删除文件和文件夹。往期推文《批量处理——输出文件名到文本文档》曾经提到过dos命令。

Dos命令中的del也可以删除文件夹中的子文件。那么问题来了,dos命令中的del的优势何在? Dos命令中的del可以删除只读文件,而stata中的erase删除不了。下面小编举个例子说明这一点吧!键入以下命令:

sysuse auto,clear

save temp1.dta,replace

运行结果如下:

sample文件夹中就生成一个temp1的dta文件。

我们右击temp1.dta文件,左击属性,把属性改成只读,再点击确定。

我们输入以下命令:

erase temp1.dta

我们换成dos命令中的del,就可以删掉只读文件。键入以下命令:

! del e:\sample\temp1.dta /f /s /q /a

运行结果如下:

这时,我们可以看到sample文件夹中的temp1文件就被删除了。

Dos命令中的del可以删除一个或多个文件,而stata中的erase一次只能删除一个文件。重复上面生成文件夹和文件的程序,再键入以下命令:

! del e:\sample\*.txt /f /s /q /a    //删除txt格式文件

! del e:\sample\*.xls /f /s /q /a    //删除xls格式文件

! del e:\sample\*.dta /f /s /q /a   //删除dta格式文件

注:/f 表示强制删除只读文件

  /s表示删除当前目录及所有子目录下的文件

  /q表示安静模式,无需确认

  /a表示删除指定属性的文件

运行结果如下:

sample文件夹中的文件就被删除了。

dos命令中的rmdir可以删除文件夹中的子文件夹。键入以下命令:

forvalue i = 1(1)5{

       ! rmdir /s/q e:\sample\文件夹`i'

}

注:/s 表示删除指定目录下的所有子目录和文件

        /q 表示安静模式,无需确认

Sample文件夹中的文件夹就被删除了。

高级式

dos命令中的rmdir也可以删除整个目录中所有的文件夹和文件。小编给大家带来终极绝招,直接对sample文件进行操作,一键删除文件夹中所有子文件夹及文件。重复上面生成文件夹和文件的程序,接着键入以下命令:

! rmdir /s/q e:\sample

运行结果如下:

最后sample文件夹中的子文件和子文件夹就被删除了。

什么?!没看懂!!不要紧!!戳下面,听爬虫小将的详细讲解,也欢迎大家的批评指正哟!

以上就是今天给大家分享的内容了,说得好就赏个铜板呗!有钱的捧个钱场,有人的捧个人场~。另外,我们开通了苹果手机打赏通道,只要扫描下方的二维码,就可以打赏啦!

应广大粉丝要求,爬虫俱乐部的推文公众号打赏功能可以开发票啦,累计打赏超过1000元我们即可给您开具发票,发票类别为“咨询费”。用心做事,只为做您更贴心的小爬虫。第一批发票已经寄到各位小主的手中,大家快来给小爬虫打赏呀~

                        文字编辑:闫续文

技术总编:刘贝贝



往期推文推荐:

1.高校学术大神:你的导师上榜了吗?

2.中国高校财经、管理与综合类期刊灌水排行榜

3.命令sum2docx输出统计量表到docx文件

4.reg2docx报告你的实证结果吧!

5.爬虫俱乐部又出新命令了——wordconvert转换你的word文件

6.putdocx+wordconvert—将实证结果输出到Word.docx)文档

7.Stata 15Markdown——没有做不到,只有想不到!

8.矩阵和宏的故事

9.shelloutopen anything

10.Putpdf--神奇的转换工具



关于我们

微信公众号“爬虫俱乐部”分享实用的stata命令,欢迎转载、打赏。爬虫俱乐部是由李春涛教授领导下的研究生及本科生组成的大数据分析和数据挖掘团队。

此外,欢迎大家踊跃投稿,介绍一些关于stata的数据处理和分析技巧。

投稿邮箱:statatraining@163.com

投稿要求:
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿”+“推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到关于stata分析数据的问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。

欢迎关注爬虫俱乐部

微信扫一扫
关注该公众号