精华内容
下载资源
问答
  • tmp什么文件

    千次阅读 2012-02-25 11:17:27
    系统中经常看到一些莫名其妙的TMP格式文件,很多读者都不明白这些文件到底有什么作用,能不能删除,今天我们就给大家揭开这个...而且在该文件夹中还有其他一些类型文件,对于这类文件,一般没有什么使用价值,我们可

     

     

    系统中经常看到一些莫名其妙的TMP格式文件,很多读者都不明白这些文件到底有什么作用,能不能删除,今天我们就给大家揭开这个谜底。临时文件产生 在系统C:\Windows\Temp文件夹中,我们经常会发现一些后缀名为TMP的文件,在该文件夹中的这些文件其实都是临时文件。它们可能是系统被误关机,或者其他程序没有删除而生的。而且在该文件夹中还有其他一些类型的文件,对于这类文件,一般没有什么使用价值,我们可以直接将其删除。 另外我们打开附件的“系统工具”下的“磁盘清理”,然后选择要清理的分区,一般首选为系统分区,即C盘。这样系统则会提示正在扫描,稍候片刻即会打开磁盘清理项目窗口,在“要删除的文件”中选中所有的文件,然后单击“确定”按钮即可。将这些临时文件清理后将可以获得更多的磁盘使用空间。调试管理器产生 大家还会在C:\Windows目录中发现一些文件名很长的TMP文件,而且其容量都是为0字节,将它们删除后一会儿又有了。其实这些文件都是由调试管理器程序产生的。对此,我们只需要进入C:\Windows\System文件夹,将其中的mdm.exe删除或重命名,然后再“运行”窗口中输入“msconfig”并回车,在“启动”选项卡中把“Machine Debug Manager”项取消即可。如果是Windows 9X/2000系统,那么还要吧打开IE“工具”菜单下的“Internet选项”命令,然后切换到“高级”选项卡,选中“禁用脚本调试”项,同样可以禁止这些0字节的TMP文件产生。

     

    参考资料:http://zhidao.baidu.com/question/6996736.html

    展开全文
  • 上传图片的时候,如果要修改图片的后缀,那需要先获取该图片的临时存储文件,然后用GD库函数打开,获取图片资源,然后重新定义后缀存储,那么这个临时文件什么呢,图片资源和咱们平时所用的文件资源又有什么区别呢...

    一、前言

          上传图片的时候,如果要修改图片的后缀,那需要先获取该图片的临时存储文件,然后用GD库函数打开,获取图片资源,然后重新定义后缀存储,那么这个临时文件是什么呢,图片资源和咱们平时所用的文件资源又有什么区别呢?生成的临时文件不能用GD库函数读取怎么办?

    二、首先是生成的临时文件不能被imagecreatefrompng()正确打开

    1、报错:

    "imagecreatefrompng(): 'C:\\Users\\ZY\\AppData\\Local\\Temp\\php9A06.tmp' is not a valid PNG file "
    

          根据报错信息,我们知道用imagecreatefrompng函数打开临时文件失败。并且经过实验,发现这算是个小概率的问题,其他的图片临时文件都是可以正常获取图片资源的。

    2、既然不能使用GD库函数,那能不能使用其他的函数读取该文件呢

    博主试了下使用fopen,file_get_contents等打开,但是打开的资源不是图片资源,在后续的存储中,由于是用:

    $result = imagejpeg($im, $file_path);
    

    来存储的,所以要求参数必须是图片资源。最终是选用move_uploaded_file($filePath, $file_path)直接保存。

    3、关于$_FILES[‘tmp_name’]解释

    			$_FILES['excel']['tmp_name'] 表示的就是上传临时文件的绝对路径
    			上传临时文件的生存周期与处理上传的php程序相同(即程序结束,临时文件消失)
    			move_uploaded_file 函数可使临时文件提前消失
    

    4、php的tmp临时文件

          关于临时文件,大概查了下,在php向服务器上任意php文件以 form-data 方式提交请求上传数据时,会生成临时文件,通过phpinfo来获取临时文件的路径以及名称。大概就是php*.tmp这种格式的。一般来说在程序结束的时候,会自动回收,也就是自动删除掉这些文件

    参考链接:
    更改php临时文件的目录等:
    https://www.racent.com/blog/how-to-change-directory-for-temporary-php-files/
    https://codeday.me/bug/20180809/216024.ht

    三、图片资源和文件资源的区别

          根据以上部分,我们知道图片资源和文件资源是不一样的。我们使fopen,file_get_contents等函数读取的文件,返回的都是文件资源。而使用imagecreatefrompng()函数返回的是图片资源。提到资源,就不得不提最开始学php的时候,我们那时候都知道,php有资源类型,只是后来用的少,慢慢的忘记了。

    大概解释:
          资源数据类型是PHP4引进的。资源是一种特殊的变量类型,保存了到外部资源的一个引用:如打开文件、数据库连接、图形画布区域等。

    区别:
          图片资源和文件资源的区别就是类型不同,虽然都是属于php的资源类型,但是代表的含义却不同,具体表现为指向的真实存储位置不一样。这里的图像资源更偏向于画布,或者是空白的画布,而文件资源更多是二进制的文件流等。

          虽然经过各种查询,大概明白了一些东西,但还是感觉差点劲,这些差距还是似懂非懂的,继续查询。

    四、关于资源类型

    1、打印一下资源返回值

      $file=fopen('index.txt',r);
       				 echo $file;
       				发现输出的值是 :Resource id #3
    

    2、解释

    资源类型又称之为句柄,句柄是用来标识对象的,以便引用。句柄是一个无符号整数,句柄是一个指针的指针。

    指针的指针可以理解为:

          指针的概念是指向变量地址的数据,指针的指针就是说这个指针的值是表示他指向的那个指针的地址。我们打印资源类型,返回的Resource id #3,可以理解为一个编号,php解释器通过这个编号从而获取到外部资源的具体地址,也方便我们接下来对于这个外部资源进行一些操作。

          这么一解释,哎,有点意思了,下面继续查找。

    3、更深入解释资源

          PHPzval可以表示广泛的数据类型,但是对于自定义的数据类型却很难充分描述。由于没有有效的方式描绘这些复合结构,因此也没有办法对它们使用传统的操作符。要解决这个问题,只需要通过一个本质上任意的标识符(label)引用指针,这种方式被称为资源。

          在zval中,对于resource,lval作为指针来使用,直接指向资源所在的地址。Resource可以是任意的复合结构,我们熟悉的mysqli、fsock、memcached等都是资源。(这句也解释了我们上面说的,指针的指针,通过指针指向一个key的地址,这个key同时又指向了真正的资源地址,所以这个key本身也是个指针

    4、如何使用资源

    (1)注册:
          对于一个自定义的数据类型,要想将它作为资源。首先需要进行注册,zend会为它分配全局唯一标示。

    (2)获取一个资源变量:
          对于资源,zend维护了一个id->实际数据的hash_tale。对于一个resource,在zval中只记录了它的idfetch的时候通过idhash_table中找到具体的值返回。

    (3)资源销毁(释放句柄函数):
          资源的数据类型是多种多样的。Zend本身没有办法销毁它。因此需要用户在注册资源的时候提供销毁函数)。当unset资源时,zend调用相应的函数完成析构。同时从全局资源表中删除它。(这部分就是为什么咱们在使用函数获取资源的时候,最后都要手动释放下资源。)

    参考链接:
    php中的资源类型:https://www.php.net/manual/zh/resource.php
    php句柄的一个讨论:https://bbs.csdn.net/topics/350023072
    php的资源:https://cloud.tencent.com/developer/article/1055801

          通过以上的种种解释,博主心里对于资源类型是有了一个更具体的了解,这种复杂类型不能像其他基础类型那样直接表示出来,所以就在内部搞个哈希表又存储了一下外部资源的地址和指针。我们打印出来的资源类型后面都是带有不同的id的,就像咱们平时用数据库一样,通过id查找具体数据,有点像的。

    在这里插入图片描述

    end

    展开全文
  • 有个朋友之前一直用SSM,后来用SSH开发项目,遇到一个问题在struts2接收上传文件的时候,发现所有接收的文件不对,后缀名还都是.tmp的,其实这个解决办法太简单。文件确实都已经上传上来了。Struts2默认就是上传的...

    有个朋友之前一直用SSM,后来用SSH开发项目,遇到一个问题

    在struts2接收上传文件的时候,发现所有接收的文件不对,后缀名还都是.tmp的,其实这个解决办法太简单。

    文件确实都已经上传上来了。Struts2默认就是上传的文件是.temp格式的临时文件,只需要修改后缀名即可,但是他用的是layer这个插件。只需要简单改造,取得文件名即可,layer的文件上传js是这样的

    layui.use('upload', function(){
      var headimgFileName="";   //1.这里添加一个变量
    	var $ = layui.jquery
      ,upload = layui.upload;
      
      //多文件列表示例
      var demoListView = $('#demoList')
      ,uploadListIns = upload.render({
        elem: '#testList'
        ,url: '../upload/upload.do'
        ,accept: 'file'
        ,multiple: true
        ,auto: false
        ,data:headimgFileName        //2.这里追加一个data字段,传入文件名
        ,field : "headimg"
        ,bindAction: '#testListAction'
        ,choose: function(obj){   
          var files = this.files = obj.pushFile(); 
          //读取本地文件
          obj.preview(function(index, file, result){
        	  headimgFileName= file.name;           //3.这个是选择上传文件后,等待上传按钮触发的回调函数,在这里可以取到文件名,所以追加这行
            var tr = $(['<tr id="upload-'+ index +'">'
              ,'<td id="fileName">'+ file.name +'</td>'
              ,'<td>'+ (file.size/1014).toFixed(1) +'kb</td>'
              ,'<td>等待上传</td>'
              ,'<td>'
                ,'<button class="layui-btn layui-btn-mini demo-reload layui-hide">重传</button>'
                ,'<button class="layui-btn layui-btn-mini layui-btn-danger demo-delete">删除</button>'
              ,'</td>'
            ,'</tr>'].join(''));
            
            //单个重传
            tr.find('.demo-reload').on('click', function(){
              obj.upload(index, file);
            });
            
            //删除
            tr.find('.demo-delete').on('click', function(){
              delete files[index]; //删除对应的文件
              tr.remove();
              uploadListIns.config.elem.next()[0].value = ''; //清空 input file 值,以免删除后出现同名文件不可选
            });
            
            demoListView.append(tr);
          });
        }
        ,done: function(res, index, upload){
          if(res.code == 0){ //上传成功
            var tr = demoListView.find('tr#upload-'+ index)
            ,tds = tr.children();
            tds.eq(2).html('<span style="color: #5FB878;">上传成功</span>');
            tds.eq(3).html(''); //清空操作
            return delete this.files[index]; //删除文件队列已经上传成功的文件
          }
          this.error(index, upload);
        }
        ,error: function(index, upload){
          var tr = demoListView.find('tr#upload-'+ index)
          ,tds = tr.children();
          tds.eq(2).html('<span style="color: #FF5722;">上传失败</span>');
          tds.eq(3).find('.demo-reload').removeClass('layui-hide'); //显示重传
        }
      });
      
    });

    1.定义一个变量用于存放文件名

    2.请求时,追加额外的data字段,传入想传的数据

    3.在pre回调中,赋值给定义的变量

    通过这三步,已经可以接收到文件的名字了


    接下来是服务器端

    通过属性驱动,就自动获取到了文件的名字


    用的是多文件上传



    它会循环调用,服务器一次次接收到请求,并非将多个文件的文件名一次性发过来逗号隔开

    所以服务器端保存文件,这么写即可,我用的UUID作为了文件的名字,FileUtils取后缀


    String oldName=UUID.randomUUID().toString().replaceAll("-", "");
    String suffix = FilenameUtils.getExtension(headimgFileName);
    String newName=oldName+"."+suffix;
    try {
        FileUtils.copyFile(headimg, new File("D://upload/"+newName));
    } catch (IOException e) {
        e.printStackTrace();
        System.out.println("服务器文件存储失败!");
    }

    这样即可


    本人个人原创,如有雷同,纯属巧合,或者与本人联系,做改动。请转载或者CV组合标明出处,谢谢!(如有疑问或错误欢迎指出,本人QQ:752231513)

    展开全文
  • [Linux] Linux中/tmp目录下文件莫名丢失

    千次阅读 2019-01-11 10:17:00
    &amp;amp;amp;gt; 删除一段时间没有被访问的文件

    0x0 前言

    前段时间的一个项目需要调用tomcat,没在意这些就把tomcat布在了/tmp下,大概1-2周左右,发现tomcat中的主程序和其他目录丢失,导致tomcat起不来,查看系统日志和tomcat日志也没有看到什么特别的东西,后来问了前辈,他说/tmp下系统会自动删除文件,于是自己查了一些资料,总结下。

    0x1 /tmp目录下自动清理删除

    在Linux系统中/tmp文件夹下的文件是会被清理、删除的,文件清理的规则是如何设定的呢?
    以Redhat为例,这个主要是因为作业里面会调用tmpwatch命令删除那些一段时间没有访问的文件。

    0x2 什么是tmpwatch

    那么什么是tmpwatch呢?其实tmpwatch是一个命令或者说是一个包。如下所示

    tmpwatch - removes files which haven’t been accessed for a period of
    time

    [root@ ~]# rpm -qa | grep tmpwatch
    tmpwatch-2.9.7-1.1.el5.5
    [root@ ~]# whereis tmpwatch
    tmpwatch: /usr/sbin/tmpwatch /usr/share/man/man8/tmpwatch.8.gz
    [root@ ~]# file /usr/sbin/tmpwatch
    /usr/sbin/tmpwatch: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped

    0x3 关于 tmpwatch

    命令作用
    tmpwatch删除一段时间没有被访问的文件。

    参数:

    -u 按照文件的最后access时间,即最后访问时间为参考。默认选项。可通过ls -lu查看。

    -m 按照文件的最后modified时间,即最后修改时间为参考。可通过ls -l查看。

    -c 按照文件的-ctime时间做参考,ctime更新的条件为写入、更改属主、权限。可通过ls -lc查看。

    -M 按照目录的修改时间来删除目录而不是访问时间。

    -a 删除所有类型文件。包括目录和symbolic links

    -d --nodirs 排除目录文件,即使是空目录。

    -d --nosysmlinks 排除symbolic links类型文件。

    -f 强制删除那些root没有写权限的文件。比如root的readonly文件

    -q 只报告错误信息。

    -x /PATH 排除特定目录,即不删除该子目录里的文件。

    -U user_name 排除属于特定用户的文件,即不删除该用户的文件。

    -v 显示删除过程。默认是不显示删除了什么文件,直接删除的。

    -t 用于测试,并不真正删除文件,能显示出要删除文件的过程。

    -d 不删除文件里的子目录,但是子目录里面的文件还是会被删除。

    0x4 修改清理、删除时间

    参数后加时间,默认是hours。也可以使用30d表示30天,但是有些版本只支持hours。
    时间后是要检查的目录。可以多个目录用空格分开。如下所示表示720小小时~=30天。如下:

    [root@~]#  more /etc/cron.daily/tmpwatch 
    flags=-umc
    /usr/sbin/tmpwatch "$flags" -x /tmp/.X11-unix -x /tmp/.XIM-unix \
             -x /tmp/.font-unix -x /tmp/.ICE-unix -x /tmp/.Test-unix \
             -X '/tmp/hsperfdata_*' 240 /tmp 
    /usr/sbin/tmpwatch "$flags" 720 /var/tmp 
    for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do
         if [ -d "$d" ]; then
              /usr/sbin/tmpwatch "$flags" -f 720 "$d"
         fi 
    done 
    [root@~]#
    

    如果你想将强制删除30天没有访问的文件改为7天,只需把

    "/usr/sbin/tmpwatch "$flags" 720 /var/tmp" 
    "/usr/sbin/tmpwatch  "$flags" -f 720 "$d"
    

    里面的720修改为189即可。

    展开全文
  • 查看tmp目录下的文件

    千次阅读 2019-09-28 23:24:50
    ls –alt /tmp/ 直接敲会这样 这样也不对 正确方法:先切换到管理员权限 sudo su root
  • 微信小程序上传word、txt、Excel、PPT等文件

    万次阅读 热门讨论 2018-06-10 11:08:17
    微信小程序开发交流qq群 173683895 承接微信小程序开发。扫码加微信。 ; 正文: ...3.后端php接收文件并存到一个服务器文件夹,把文件名存到数据库以后检索用 4.在微信小程序创建一个页面...
  • hadoop无法自动生成tmp文件

    千次阅读 2019-11-12 11:29:11
    // 指定本次job reduce阶段的输出数据类型 也就是整个mr任务的最终输出类型 job.setOutputKeyClass(Text.class); job.setOutputValueClass(LongWritable.class); // 指定本次job待处理数据的目录 和程序执行完...
  •  格式是不对了,但是文件内容并没有发生变化,说明文件是上传成功了。起初以为是编码问题,很多的有出现编码问题的地方都检查了一遍,没有发现任何的问题。 其实可以上传也可以看,总体来说,那些随机名字还帮你...
  • TMP文件恢复Word文件

    千次阅读 2015-01-16 09:52:55
    Word 将临时文件(~WRL000x.tmp)用作“安全网络”,以防止其文件保存方案中出现系统错误。通过首先保存到临时文件,然后使用适当的名称重命名此文件,Word 可确保原始文件的数据完整性,以预防写入文件时发生的问题...
  • linux 下tmp目录文件怎么被删除的?

    千次阅读 2017-08-07 17:06:00
    tmp目录下文件什么时候会删除?写这篇文章是我要重启长时间运行的hadoop集群的时候,关闭不了相应的服务。查看shell脚本看到,要找到服务的pid文件,才能重启,一般情况下pid文件都会存储在tmp目录下,但是pid文件却...
  • JAVA清空tomcat下temp中的.tmp临时文件

    千次阅读 2019-11-20 12:43:41
    JAVA清空tomcat下temp中的.tmp临时文件 由于引入的某些第三方jar包在tomcat下产生了大量临时文件,使用JAVA程序对其进行清除。 代码 try { File file = new File("../temp"); //找到temp文件夹,生成一个File...
  • 问题描述: .excel文件突然损坏变为.tmp格式,文件名类似 “被损坏文件~309D58.tmp”。...如下图所示,选择“所有文件类型”。选择损坏的文件。 2、如下图所示,选择Excel打开。 3、打开的.tmp文件另存为即可。 ...
  • Centos的文件类型和文件结构

    千次阅读 2019-03-21 20:17:31
    1.Centos文件类型 2.Centos的文件结构 (1)/bin 全局的指令文件目录 (2)/home 普通用户的家目录 (3)/boot 内核文件的引导目录 (4)/sbing 超级用户使用的指令文件 root不能使用 (5)/tmp 临时文件...
  • 各位大神,我想实现这样一个功能:使用java语言从ftp上下载文件,正在下载中的文件使用.tmp后缀标记,下载完成后使用.log.gz,ftp上的文件就是.log.gz文件,请问怎么实现,最好有代码。使用字符串拼接,还有下载完成...
  • SpringBoot 文件上传 通过Content-Type和文件头判断文件类型 一、关于MIME MIME的全称是Multipurpose Internet Mail Extensions,即多用途互联网邮件扩展,尽管读起来有些拗口,但大多数人可能都知道, 这是HTTP协议...
  • /tmp 下的文件在每次关机后都会被清理干净, 若想手动清理,清理的时候不推荐使用rm -rf命令,这样有时会引起程序的僵死。推荐使用tmpwatch命令来进行清理。 附tmpwatch功能及使用说明: tmpwatch简介...
  • 在使用LogBack打印日志,并根据每天和自定义大小拆分压缩文件时,**出现上百G的tmp文件,不会自动删除,另外,出现tmp没有删除的情况时,压缩文件里面的文件是空的。** 请问是什么情况,是否可以优化logback的配置...
  • 入门学习Linux常用必会60个命令实例详解doc/txt

    千次下载 热门讨论 2011-06-09 00:08:45
    在使用mount这个指令时,至少要先知道下列三种信息:要加载对象的文件系统类型、要加载对象的设备名称及要将设备加载到哪个目录下。 (1)Linux可以识别的文件系统 ◆ Windows 95/98常用的FAT 32文件系统:vfat ;...
  • Linux 命令面试题

    万次阅读 多人点赞 2019-07-24 09:40:04
    Linux面试题: 1.Linux常用系统安全命令 ...chmod // 用来变更文件或目录的权限 setfacl // 设置文件访问控制列表 2.Linux常用进程管理命令 w // 用于显示已经登陆系统的用户列表,并显示用户正在执行的指令。 top ...
  • ubuntu使用教程

    万次阅读 多人点赞 2020-01-15 17:53:05
     什么是文件系统: 文件系统是操作系统用于明确磁盘或分区上的文件的方法和数据结构; 即在磁盘上组织文件的方法。  两种文件系统的对比: LInux目录结构: / : 所有目录都在 /boot : boot 配置文件、...
  • 系统使用时间长后会产生临时文件(/tmp下),需要清理。但清理的时候不推荐使用rm -rf。这样有时会引起程序的僵死。  推荐使用tmpwatch命令来进行清理。关于tmpwatch的说明如下: 名称 : tmpwatch  版本 : ...
  • 【翻译自mos文章】在/tmp/.oracle目录下的文件什么
  • Hive外部分区表加载flume打到hdfs上文件,读不到.tmp文件
  • 在Linux下如何解压iso类型文件呢? 可以使用mount命令来处理 [root@DB-Server tmp]# ls /tmp/rhel-server-5.7-x86_64-dvd.iso /tmp/rhel-server-5.7-x86_64-dvd.iso [root@DB-Server tmp]# cd /mnt/ [root@DB-...
  • 【Linux】什么是链接文件及其分类

    千次阅读 2020-10-01 16:10:03
    背景 ...有两种不同类型文件链接: 符号链接 硬链接 符号链接是一个实实在在的文件。 root@mgt01:/home/byy/tmp# ls -l test1 //当前目录下有一个test 1文件 -rw-r--r-- 1 root root 15 Oct 1 1
  • 今天我们来学习特殊一点的文件"链接文件",这一章节会告诉大家什么是链接文件,以及链接文件有几种类型,有什么区别,在什么地方使用到。链接文件之前在第一章就有提到过,查看一个文件的详细信息会有一个"drwxr-xr-...
  • 1、七种文件类型 普通文件类型 Linux中最多的一种文件类型, 包括 纯文本文件(ASCII);二进制文件(binary);数据格式的文件(data);各种压缩文件.第一个属性为 [-] 目录文件 就是目录, 能用 # cd 命令进入的。第一...
  • // 分割文件名-取文件类型 $ext=array_pop(explode('.',$name)); // 取文件 $tmp_name=$_FILES['img']['tmp_name']; // 随机名称 $tfile=time().mt_rand().'.'.$ext; // 存放位置 $target='admin/'.$tfile; // ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 218,769
精华内容 87,507
关键字:

tmp是什么文件类型