笔记
0工具
0此页用于记录用户反馈问题后的每一次改进
关于
“写笔记”支持四种格式——Word 文档、Excel 表格、Markdown、纯文本,起稿或二次编辑时都能随时切换,同一篇笔记想用哪种形态来记,都由你说了算。
md、txt、csv、json 这类纯文本则原样载入,不做多余加工。拿一张现成的表倒进来、改几笔、再导出去,等于白用一台免费的格式转换器。
要带走就在右上角点“下载”,可导出 PDF、Word、Markdown、Excel、TXT 等格式;列表卡片“⋯”菜单里,也有同样的下载入口。
在“工具”页点“+ 上传工具”即可发布:填好名称与链接,再用 Markdown 把使用方法写清楚——能解决什么问题、怎么装、怎么用,比堆介绍实在。
要分发安装包就一并上传压缩包(ZIP、RAR、7Z、TAR.GZ,最大 35MB),别人在详情页一键下载;只放链接不带附件也可以。
工具按大家的收藏热度排序,好用的自然会被顶上来。发布后可在详情页或卡片菜单里编辑、下架。
写笔记时勾上“隐藏”,这篇就只存在于你自己的账号里:不进列表、不进搜索、不上首页精选,也不会出现在任何公开的页面,链接发给别人同样打不开。
适合放密码、草稿、日记这类只给自己看的内容;想公开,去“发布”打开它,把“隐藏”的勾去掉再保存,之后编辑会默认保持原状态,不会悄悄变回公开。
不想公开、只想临时给人看:点“分享”生成一条带密码和有效期的链接,到期自动失效,你也能随时撤销。
你的内容会同时保存在多个副本上,系统定期做备份与完整性校验,再配合异地容灾机制:就算某台机器出问题,数据也不会丢,可以长期放心存放;特别重要的资料,仍建议你另外再留一份备份。
全站跑在容器化、模块化的现代架构上,更新、部署、回滚都很快,扩展性和稳定性都按长期运营的标准来设计(Built for reliability, designed to scale)。
这个网站最早只是一个人的笔记仓库,后来慢慢长成现在的知识中枢。设计上很克制——没有广告、没有追踪、没有推荐算法,只是干干净净地存放一些东西;既然做好了,就公开出来,万一有人用得上呢。
不做大而全,不做平台梦,保持简单、保持克制、保持好奇。所有内容都由用户贡献、由用户维护:不会突然冒出付费墙,不会在角落塞广告位,也不会把你的数据卖给第三方。
产品会持续迭代,站内日志页记录着每一次改动,改了什么都有迹可循;想了解这个站是怎么一步步走到今天的,翻翻日志就能看到来龙去脉。
如果在这里看到涉嫌违规的内容,点对应卡片右侧的“举报”按钮就能提交,我们会尽快核实处理;也谢谢你花一点时间,一起把这里维护干净。
趋势
按拍摄时间批量重命名照片,exiftool 归档
把手机、相机、还有旧电脑里散落几年的照片归拢到一起,发现最大的问题不是重复,而是命名乱七八糟:IMG_20230801_123456.jpg、DSC_0001.jpg、还有一堆微信存下来的名字带随机串的图。想按时间线翻根本没法翻。照片真正的拍摄时间写在 EXIF 里,用 exiftool 按拍摄时间批量重命名是最省事的做法。
exiftool 是个命令行工具,对照片元数据的处理能力很强。核心命令是它那个文件名重定向语法,把 DateTimeOriginal 这个 EXIF 字段读出来,格式化成新文件名:
exiftool '-FileName<DateTimeOriginal' \
-d '%Y%m%d_%H%M%S%%-c.%%e' \
/mnt/photos/incoming
拆开解释一下:DateTimeOriginal 是照片的原始拍摄时间,相机和手机都会写这个字段。后面的 -d 是指定输出格式,%Y 是年,%m 是月,%d 是日,以此类推。%%-c 是 exiftool 的特殊处理,意思是如果重命名后和已有文件重名,就自动追加 _1、_2 这样的序号,避免覆盖;%%e 保留文件本来的扩展名。执行完以后,IMG_20230801_123456.jpg 会变成 20230801_123456.jpg 这种样子,DSC_0001.jpg 也会按它实际拍摄的时间改名,跟文件名里那个序号完全没有关系。
跑之前先建个测试目录,拷几张进去试跑,确认命名结果符合预期再对全量执行。exiftool 默认在改了元数据以后会留一份 _original 的备份,但 -FileName 这种纯改文件名的操作我记得是不生成备份的,所以全量跑之前,我先手动把整个目录复制了一份,改坏了还能退回去。这个习惯救过我一次,有一次 -d 格式写错,把时间格式符写漏了一个,导致一批文件被改成了奇怪的名字,靠备份才还原。
不是所有图片都有 DateTimeOriginal。截图、网上下载的图、还有从聊天软件里保存的图片,很多只有文件系统层面的修改时间,没有 EXIF 拍摄时间。这些文件要用 FileModifyDate 也就是文件修改时间来兜底。我分两步走,第一步先处理有拍摄时间的,第二步用 if 条件筛掉那些没有 DateTimeOriginal 的,改用修改时间命名:
exiftool '-FileName<FileModifyDate' \
-d '%Y%m%d_%H%M%S%%-c.%%e' \
-if 'not $DateTimeOriginal' \
/mnt/photos/incoming
-if 后面的条件是 exiftool 的表达式语法,not $DateTimeOriginal 表示"没有拍摄时间字段的文件"。这一步把截图按保存时间归了位,虽然对截图来说"保存时间"约等于"生成时间",误差通常可以接受。
视频文件是另一套字段。手机拍的视频,拍摄时间存在 QuickTime 容器的 creationdate 里,不是 EXIF。exiftool 对视频也能读,我用的命令类似,只不过读取字段换一下。处理手机视频的时候发现个别安卓机型会把时间记成 UTC,导致视频时间比实际晚八个小时,照片又不会这样,同一个文件夹里照片视频对不上时间线。这个坑我没找到统一的解法,只能在批量处理完后抽查几个视频,发现差八小时的,用 exiftool 整体校正一次,把时间字段统一加八小时:
exiftool -AllDates+=8 -api QuickTimeUTC=1 某目录
AllDates 会同时改 DateTimeOriginal、CreateDate 和 ModifyDate 三个字段,视频也适用。这块我到现在也没完全搞明白各家手机厂商对时间字段的处理差异,遇到差八小时的视频就手动加一遍,好在量不大。
相机时钟不准的问题更普遍。有些老相机时间没设对,整批照片的时间都是偏的,早几年拍的照片显示成别的时间。这种我用整体偏移校正,比如相机快了整一小时,就批量减一小时:
exiftool '-AllDates-=1' /mnt/photos/camera_a
照片按时间重命名只是第一步,后面我还按年月把它们归到了目录里,命令是把拍摄时间格式化成目录路径:
exiftool '-Directory<DateTimeOriginal' \
-d '/mnt/photos/sorted/%Y/%Y-%m' \
/mnt/photos/incoming
跑完以后目录结构变成 2023/2023-08 这样的按月归档。这一套下来,散了几年的照片终于能按时间线正常浏览了。量大的话建议一批一批来,我那次一次性处理一万两千多张,跑了一晚上才完,中途还因为磁盘空间不足中断过一次,分批跑能省心不少。