使用echo 无法正确清空文件存储大小

在使用echo进行重定向文件的时候,会存在大小没有发生改变的现象

使用上面的方法遇到一个现象

ls -l 与 du -sh 得到的大小事是不同的

可以尝试下面的方面之后在进行对比

再看是否正确清除

  1. 使用重定向方法

    du -sh ./*
    > access.log
    du -sh ./*
    
  2. 使用true命令重定向清空文件

    du -sh ./*
    true > access.log
    du -sh ./*
    
  3. 使用cat/cp/dd命令以及/dev/null设备来清空

    du -sh ./*
    cat /dev/null > access.log
    du -sh ./*
    
    cp /dev/null  access.log
    
    dd if=/dev/null of=access.log
    
  4. 使用echo命令清空文件

    echo -n "" > access.log
    du -sh ./*
    
  5. 使用truncate命令清空

    truncate -s 0 access.log
    

posted @ 2022-05-18 23:51  Lin-Grocery  阅读(360)  评论(0编辑  收藏  举报