自杀程序&递归删除目录
自杀程序,删掉自身,包括执行程序所在的文件夹。
仅在windows下进行了测试,使用语言C#
        string fileName = Path.GetTempPath() + "killmyself.bat";
        FileInfo fi = new FileInfo(fileName);
        if(fi.Exists)
            fi.Delete();
        StreamWriter bat = new StreamWriter(fi.OpenWrite());
        bat.WriteLine("cd ..");
        //bat.WriteLine($"del \"{Environment.CurrentDirectory}\" /q");
        bat.WriteLine($"rd \"{Environment.CurrentDirectory}\" /Q /S");  //删除包括执行程序的文件夹
        bat.WriteLine($"del \"{fileName}\" /q");    //删除临时bat文件
        bat.Close();
        ProcessStartInfo info = new ProcessStartInfo(fileName);
        info.WindowStyle = ProcessWindowStyle.Hidden;
        Process.Start(info);
        Environment.Exit(0);
递归删除目录的样例代码
    /// <summary>
    /// 递归删除目录
    /// </summary>
    /// <param name="dir"></param>
    public static void Deletedir(DirectoryInfo dir)
    {
        if (!dir.Exists)
        {
            Console.WriteLine("Directory not exists");
            return;
        }
        foreach (var item in dir.GetDirectories())
        {
            Deletedir(item);
        }
        try
        {
            dir.Delete(true);
            Console.WriteLine("delete   " + dir.FullName);
        }
        catch (Exception)
        {
        }
    }
自杀程序&递归删除目录的更多相关文章
- Java实现非递归删除目录
		最近在学C#的文件系统, 发现C#的文件系统貌似比java的东西少一点, 居然连删除目录都直接做好封装了, 想到学java的时候还要自己写递归删除, 好像没写过非递归的,就在网上查了下, 关于非递归删 ... 
- Java 之递归删除目录
		Java 之递归删除目录 一.思想 必须从最里层的文件开始删除,使用递归删除. 二.源代码:RecursiveDeleteDirectory.java package cn.com.zfc.day01 ... 
- php 递归删除目录
		/* * 递归删除目录 */ function deletedir($dir){ if($handle = @opendir($dir)){ while($file = readdir($handle ... 
- linux下递归删除目录下所有exe文件---从删库到跑路篇
		linux下递归删除目录下所有exe文件 find . -name '*.exe' -type f -print -exec rm -rf {} \; (1) "." 表示从当前目 ... 
- java递归删除目录下所有内容
		java递归删除目录下所有内容 private static boolean deleteDir(File dir) {if (dir.isDirectory()) { String[] ... 
- PHP 递归删除目录中文件
		/** * 递归删除目录中文件 * @param $pathname * @return bool */public static function delDir($pathname)//要删除的目录 ... 
- [代码应用]javaSE程序递归删除文件夹下的.bak文件程序源代码
		本文地址:http://blog.csdn.net/sushengmiyan/article/details/39158939 本文作者:sushengmiyan ------------------ ... 
- 一个Java递归删除目录的方法
		public static void delDir(File f) { // 判断是否是一个目录, 不是的话跳过, 直接删除; 如果是一个目录, 先将其内容清空. if(f.isDirectory() ... 
- 使用Java语言递归删除目录下面产生的临时文件
		背景:项目copy的过程中,在项目的目录文件夹下面都产生了一个固定的文件,很是讨厌.手动删除的话比较费力,所以写了一个简单的Java程序去删除: public static void main(Str ... 
随机推荐
- sybase convert 函数
			1.从string到int的转换 convert(int,@string) select convert( int , '15') 2. 从int 到 decimal 的转换 convert(deci ... 
- 怎么在SQL Server 2008中还原.mdf数据文件
			还原数据库文件的过程中,只有mdf文件,该怎么还原?在原来的SQL Server 2005中直接点击数据库然后附加就可以还原,但是在2008 版本中附加数据库文件则会出错(只有mdf文件){执行Tra ... 
- shell复习笔记----查找与替换
			查找文档 以grep 程序查找文本(匹配文本 matching text)相当方便.传统上有三种程序可以用来查找整个文本文件. grep 最早的文本匹配程序.其最简单的方式就是使用固定字符串 $ wh ... 
- 【高斯消元】BZOJ 1013: [JSOI2008]球形空间产生器sphere
			Description 有一个球形空间产生器能够在n维空间中产生一个坚硬的球体.现在,你被困在了这个n维球体中,你只知道球面上n+1个点的坐标,你需要以最快的速度确定这个n维球体的球心坐标,以便于摧毁 ... 
- PAT-乙级-1006. 换个格式输出整数 (15)
			1006. 换个格式输出整数 (15) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 让我们用字母B来表示“百” ... 
- Scala学习——基础篇
			[<快学Scala>笔记] 一.基础 1.变量val 标志符: 声明常量: 如,val answer = 1var 标志符:声明变量: 类型推断:变量的类型由scala根据初始化变量的表达 ... 
- __init和__exit宏的作用
			原文地址:http://blog.csdn.net/zhenwenxian/article/details/8564574 内核的部分函数带有__init和__exit宏,负责“初始化”和“清理收尾” ... 
- Android应用启动画面
			原文地址: [Android]应用启动画面 - 空客的日志 - 网易博客 http://blog.163.com/da7_1@126/blog/static/104072678201291921028 ... 
- (转)详解LVS负载均衡之三种工作模型原理和10种调度算法
			原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://linuxnx.blog.51cto.com/6676498/1195379 LV ... 
- How to learn C++ and find all STL Algorithm reference
			You can find all cpp references on websites: http://zh.cppreference.com/ http://www.cplusplus.com/re ... 
