第 59 期:互联网有记忆,但不完全有

@Author : Lewis Tian (taseikyo@gmail.com)

@Link : github.com/taseikyo

@Range : 2024-04-14 - 2024-04-20

Weekly #59

readme | previous | next

本文总字数 1963 个,阅读时长约:3 分 53 秒~7 分 46 秒,统计数据来自:算筹字数统计

*Photo by tommao wang on Unsplash

Table of Contents

  • tip

    • Linux 防止文件被误删除或修改

    • html 表格转 markdown 表格

    • Windows 上是否有 /dev/null?

  • share

    • 互联网有记忆,但不完全有

algorithm 🔝

review 🔝

tip 🔝

Linux 没有回收站,一旦文件或文件夹被误删除,要寻找回来很麻烦,不如事先对一些重要的文件做一些保护,这时我们需要一个命令 chattr, 其使用格式为 chattr 操作符 属性 文件名

操作符有以下三种

+ 给文件增加属性
- 去除文件属性
= 设置文件的仅有属性

属性有

a 允许给文件追加内容
i 保护模式(不允许删除或修改)

比方说我们执行

sudo chattr +i a.cpp

接着我们删除

rm a.cpp

此时会提示

rm: 无法删除'a.cpp': 不允许的操作

即便加上 sudo 也无法删除,此时也无法修改文件了。如果我们要去除这个保护,只需要执行

sudo chattr -i a.cpp

如果我们防止文件被删除,但允许追加内容,可以执行

sudo chattr +a a.cpp

此时添加

echo 'Hi' >> a.cpp

但是不能通过 vim 添加

如果我们是想保护文件夹,可以使用 -R 用以递归到目录里所有文件,比如

sudo chattr -R +i ./testchattr/

查看文件属性

lsattr a.cpp

附命令详解:

参数
作用

i

无法对文件进行修改;若对目录设置了该参数,则仅能修改其中的子文件内容而不能新建或删除文件

a

仅允许补充(追加)内容,无法覆盖 / 删除内容(Append Only)

S

文件内容在变更后立即同步到硬盘(sync)

s

彻底从硬盘中删除,不可恢复(用 0 填充原文件所在硬盘区域)

A

不再修改这个文件或目录的最后访问时间(atime)

b

不再修改文件或目录的存取时间

D

检查压缩文件中的错误

d

使用 dump 命令备份时忽略本文件 / 目录

c

默认将文件或目录进行压缩

u

当删除该文件后依然保留其在硬盘中的数据,方便日后恢复

t

让文件系统支持尾部合并(tail-merging)

x

可以直接访问压缩文件中的内容

常用选项

-R:递归处理,将指令目录下的所有文件及子目录一并处理;
-v<版本编号>:设置文件或目录版本;
-V:显示指令执行过程;
+<属性>:开启文件或目录的该项属性;
-<属性>:关闭文件或目录的该项属性;
=<属性>:指定文件或目录的该项属性。
参考示例:
chattr +i file //设置不能对文件进行修改,此时文件无法被写入也无法被删除。
chattr -i file //撤销 chattr +i file  的设置,此时file可以被删除

chattr +a file //不许删除文件 修改文件名,可以写入文件

share 🔝

1. 互联网有记忆,但不完全有

最近重拾 ARTS 之后翻看收藏夹,里面有很多博主的个人主页,这些博主或是技术大佬,或是喜欢进行各种分享,时隔几年之后再次点击相应链接的时候已经是 404 了,收藏夹中仅仅保留了当初收藏时网页的标题,除此以外再不剩任何痕迹,都说互联网是有记忆的,但是从这一点看,记忆也不完全有。

在我另外一个库中,看到喜欢的博客都会存为 markdown 进行本地备份,即便该网页寄了我本地仍能看到,但是像那种博主可能就不好这样做,要么备份全部博客/文章,但是可能并不是都感兴趣,又或者不及时仍会丢掉博主消失前更新的那些内容。

突然想起来有一种叫网页快照的东西,但是像这种只有链接的如何去看快照?后面可以研究一下。

readme | previous | next

最后更新于

这有帮助吗?