-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrss.xml
More file actions
1055 lines (983 loc) · 50.9 KB
/
rss.xml
File metadata and controls
1055 lines (983 loc) · 50.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
<title></title>
<link>undefined</link>
<description>undefined</description>
<lastBuildDate>Fri, 10 Oct 2025 03:35:13 GMT</lastBuildDate>
<docs>https://validator.w3.org/feed/docs/rss2.html</docs>
<generator>Joplin Pages Publisher</generator>
<item>
<title><![CDATA[DIY壁柜书架方案]]></title>
<guid>2dee05ffee4840f0a6241615e7532b58</guid>
<pubDate>Fri, 22 Aug 2025 01:03:33 GMT</pubDate>
<content:encoded><![CDATA[<h2 id="一-背景">一、背景</h2>
<p>家里孩子的房间本就不大,添置衣柜后,连摆放书架的位置都没了。看着闲置的廊道,想着要是能合理利用起来,既不浪费空间,又能解决孩子的书籍收纳问题,简直一举两得。然而,在网上反复挑选成品书架时,却发现了不少问题。书架的高度、宽度、深度,总是无法精准适配廊道空间,不是太占地方影响通行,就是容量不足。在这种情况下,自己动手 DIY 一款专属书架的想法愈发强烈。后来在网上偶然看到一款心仪的成品书架,便决定参考其样式,购买铝型材和板材,开启这场充满挑战与创意的 DIY 之旅。</p>
<img src="/_resources/8a71c2cf5c6344949730e217b4a00417.png" alt="ef6359bc56aca45e0db80ea309830991.png" width="499" height="624" class="jop-noMdConv" />
<h2 id="二-设计">二、设计</h2>
<p>单位:mm</p>
<hr />
<p>整体空高:2440</p>
<p>铝型材高度:2282 至 2310 取中间值 2230</p>
<p>脚杯高度:65 至 79</p>
<p>整体长度:1740</p>
<p>整体深度:220</p>
<hr />
<p>2400 x 6 根</p>
<p>总长:42640 mm = 42.61 m</p>
<hr />
<p>分层最小高度 30</p>
<p>若安排 7 层,需要 6 层隔板;单块 150 长度,需要 12 块隔板</p>
<p><img src="/_resources/648e37ecfa544910b2c1d65e03806e82.png" /></p>
<hr />
<p>计算两块板子重叠部分的长度,用于计算在重叠部分的中间位置开孔</p>
<p>x为重叠部分的长度</p>
<p>x + y=1<br />
2y + x=1.75</p>
<p>x = 0.25<br />
y = 0.75</p>
<p>打孔边距<br />
0.125m = 125mm</p>
<p>125mm x 2 = 250mm<br />
750mm的跨度</p>
<h2 id="三-采购">三、采购</h2>
<p><strong>3030铝型材:小计380.04元</strong></p>
<p><img src="/_resources/d8e0e695ea7c446f89db250924f96951.png" /></p>
<p><img src="/_resources/02062e9f86b64eed834ca67b84a995ed.png" /></p>
<p><strong>松木木板:小计213.07元</strong></p>
<p><strong><img src="/_resources/433c098749344ea8b38162f932fc7886.png" /></strong></p>
<p><strong>3030开孔器:小计3.6元</strong></p>
<p><img src="/_resources/d1d953e34dcc488ca2c5c5e00a5944cb.png" /></p>
<p><strong>开槽凿刀:小计6.48元</strong></p>
<p><img src="/_resources/e3ac8b0dd0a046d2a4f686db430574e2.png" /></p>
<p><strong>不锈钢安全拉绳:小计3.96元</strong></p>
<p><img src="/_resources/866c2b438c11498a91df0fc092a0e450.png" /></p>
<p><strong>M8x130螺丝:小计4.94元</strong></p>
<p><img src="/_resources/5b52e72ec361453d88b66f77b722c9ff.png" /></p>
<p><strong>5mm内6角螺丝刀:小计3.84元</strong></p>
<p><img src="/_resources/3616ed59ac194f99ac4ee6d3073792c0.png" /></p>
<p><strong>电钻转往复锯:小计10.8元</strong></p>
<p><img src="/_resources/bbb1a1079af44e3eb84c3fa17c8da8aa.png" /></p>
<h2 id="四-效果">四、效果</h2>
<p><img src="/_resources/be30565a0b0e44ed970e26ea1da4c887.jpg" /></p>
<p><img src="/_resources/ddf90d18af6643949d5c7779bc0d3b46.jpg" /></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Markdown 导出 PDF 分页技巧:用 HTML 标签精准控制页面布局]]></title>
<guid>33ba28e9893949c09c751aa238f961d5</guid>
<pubDate>Fri, 27 Jun 2025 00:19:09 GMT</pubDate>
<content:encoded><![CDATA[<p>在技术写作、学术论文、产品手册等长文档的创作中,将 Markdown 格式内容导出为 PDF 时,合理的分页设置能显著提升文档的可读性和专业性。本文将详细解析如何通过插入 HTML 标签实现精准分页控制,帮助你打造结构清晰的 PDF 文档。</p>
<h2 id="一-为什么需要分页控制">一、为什么需要分页控制?</h2>
<p>当 Markdown 文档包含多个章节、独立模块或需要适配打印场景时,自然分页往往无法满足需求:</p>
<ul>
<li><strong>结构清晰化</strong>:书籍章节、报告分节需要强制分页,避免内容跨页断裂</li>
<li><strong>打印友好性</strong>:简历、合同等文档要求特定内容固定在单页</li>
<li><strong>阅读体验</strong>:长表格、图表需要单独占页,防止跨页显示影响查看</li>
</ul>
<p>传统 Markdown 依赖内容自动填充页面的机制,在复杂文档中常导致章节开头出现在页中、图表截断等问题。而 HTML 标签的介入能实现「人工干预分页」,让文档结构完全符合预期。</p>
<h2 id="二-核心技巧插入-html-分页标签">二、核心技巧:插入 HTML 分页标签</h2>
<h3 id="1-基础语法与实现原理">1. 基础语法与实现原理;</h3>
<p>在 Markdown 中直接插入 HTML 代码<code><div style="page-break-after: always;"></div></code>,该标签会被解析为「强制分页符」。其原理是利用 CSS 的<code>page-break-after</code>属性,告诉 PDF 渲染引擎在此处进行页面分割。</p>
<div><pre class="hljs"><code>## 第一章 引言
这里是章节内容...
<span class="hljs-tag"><<span class="hljs-name">div</span> <span class="hljs-attr">style</span>=<span class="hljs-string">"page-break-after: always;"</span>></span><span class="hljs-tag"></<span class="hljs-name">div</span>></span> <span class="hljs-comment"><!-- 强制分页 --></span>
## 第二章 核心技术
这里是下一章内容...</code></pre></div>
<h3 id="2-操作注意事项">2. 操作注意事项;</h3>
<ul>
<li><strong>标签位置</strong>:必须插入在普通文本段落中,避免放入代码块(<code> </code>)或列表项内</li>
<li><strong>格式规范</strong>:标签前后建议保留空行(如上文示例),提升 Markdown 可读性</li>
<li><strong>工具兼容性</strong>:主流导出工具(Typora/Pandoc/Markdown Here)均支持该语法,导出时会自动忽略标签可视化显示</li>
</ul>
<h2 id="三-多场景应用示例">三、多场景应用示例</h2>
<h3 id="场景-1书籍章节强制分页">场景 1:书籍章节强制分页;</h3>
<div><pre class="hljs"><code><span class="hljs-comment"># 第一篇 基础篇</span>
<span class="hljs-comment">## 第一章 开发环境搭建</span>
[内容<span class="hljs-string">...</span>]
<div style=<span class="hljs-string">"page-break-after: always;"</span>><<span class="hljs-string">/div</span>>
<span class="hljs-comment">## 第二章 基础语法入门</span>
[内容<span class="hljs-string">...</span>]</code></pre></div>
<p>确保每章内容从新页开始,符合书籍排版规范。</p>
<h3 id="场景-2报告分模块独立显示">场景 2:报告分模块独立显示;</h3>
<div><pre class="hljs"><code>### 一、市场现状分析
[数据图表与详细分析...]
<div style=<span class="hljs-string">"page-break-after: always;"</span>></div>
### 二、竞争态势研究
[竞品分析表格与对比图...]</code></pre></div>
<p>让每个核心模块单独占页,方便汇报时重点展示。</p>
<h3 id="场景-3简历分页控制">场景 3:简历分页控制;</h3>
<div><pre class="hljs"><code><span class="hljs-comment"># 个人简历</span>
<span class="hljs-comment">## 基本信息</span>
[姓名/联系方式/地址<span class="hljs-string">...</span>]
<div style=<span class="hljs-string">"page-break-after: always;"</span>><<span class="hljs-string">/div</span>>
<span class="hljs-comment">## 工作经历</span>
[详细履历<span class="hljs-string">...</span>]</code></pre></div>
<p>确保简历内容不会在「基本信息」与「工作经历」之间分页,保持单页显示(如需跨页则无需标签)。</p>
<h2 id="四-常见问题与解决方案">四、常见问题与解决方案</h2>
<h3 id="问题-1分页标签无效">问题 1:分页标签无效;</h3>
<ul>
<li><strong>可能原因</strong>:导出工具未启用 HTML 解析(如某些极简转换器)</li>
<li><strong>解决方法</strong>:</li>
</ul>
<ol>
<li>
<p>检查工具设置:Typora 需在「文件 - 导出 - PDF」中保持默认设置(自动解析 HTML)</p>
</li>
<li>
<p>改用专业工具:Pandoc 命令行导出时添加参数<code>--pdf-engine=weasyprint</code>增强 HTML 支持</p>
</li>
</ol>
<h3 id="问题-2分页后出现空白页">问题 2:分页后出现空白页
</h3>
<ul>
<li><strong>可能原因</strong>:当前页剩余空间不足以容纳下一段落</li>
<li><strong>优化技巧</strong>:搭配<code>page-break-inside: avoid</code>属性防止段落内分页</li>
</ul>
<div><pre class="hljs"><code><<span class="hljs-keyword">div</span> style=<span class="hljs-string">"page-break-after: always; page-break-inside: avoid;"</span>>
[完整段落内容,避免被分页截断]
</<span class="hljs-keyword">div</span>></code></pre></div>
<h3 id="问题-3表格-图片跨页显示">问题 3:表格 / 图片跨页显示;</h3>
<p><strong>解决方案</strong>:在图表前后添加双分页符</p>
<div><pre class="hljs"><code>
<span class="hljs-tag"><<span class="hljs-name">div</span> <span class="hljs-attr">style</span>=<span class="hljs-string">"page-break-after: always;"</span>></span><span class="hljs-tag"></<span class="hljs-name">div</span>></span>
<span class="hljs-tag"><<span class="hljs-name">div</span> <span class="hljs-attr">style</span>=<span class="hljs-string">"page-break-after: always;"</span>></span><span class="hljs-tag"></<span class="hljs-name">div</span>></span> <span class="hljs-comment"><!-- 强制下一页开始 --></span>
[图表分析文字...]</code></pre></div>
<h2 id="五-进阶用-html-实现页面样式控制">五、进阶:用 HTML 实现页面样式控制</h2>
<p>除了分页,还可通过 HTML 标签设置 PDF 页面基础样式(需结合支持 CSS 的导出工具):</p>
<h3 id="1-页面边距设置">1. 页面边距设置;</h3>
<div><pre class="hljs"><code><<span class="hljs-keyword">div</span> style=<span class="hljs-string">"page-break-after: always; margin: 2cm;"</span>>
[内容区域,四周留白<span class="hljs-number">2</span>厘米]
</<span class="hljs-keyword">div</span>></code></pre></div>
<h3 id="2-页眉页脚添加">2. 页眉页脚添加;</h3>
<div><pre class="hljs"><code><span class="language-xml"><span class="hljs-comment"><!-- 页眉(顶部居中) --></span>
<span class="hljs-tag"><<span class="hljs-name">div</span> <span class="hljs-attr">style</span>=<span class="hljs-string">"position: fixed; top: 0; left: 0; right: 0; text-align: center;"</span>></span>
<span class="hljs-symbol">&#x20;</span> 《技术白皮书》 | 第</span><span class="hljs-template-variable">{page}</span><span class="language-xml">页
<span class="hljs-tag"></<span class="hljs-name">div</span>></span>
<span class="hljs-comment"><!-- 页脚(底部右侧) --></span>
<span class="hljs-tag"><<span class="hljs-name">div</span> <span class="hljs-attr">style</span>=<span class="hljs-string">"position: fixed; bottom: 0; right: 1cm;"</span>></span>
<span class="hljs-symbol">&#x20;</span> Copyright © 2025 技术团队
<span class="hljs-tag"></<span class="hljs-name">div</span>></span></span></code></pre></div>
<blockquote>
<p>注意:页眉页脚需配合 Pandoc 等工具的 CSS 模板使用,具体语法需根据工具文档调整</p>
</blockquote>
<h3 id="3-避免内容截断">3. 避免内容截断
</h3>
<div><pre class="hljs"><code><span class="hljs-comment"><!-- 防止段落中间分页 --></span>
<span class="hljs-tag"><<span class="hljs-name">div</span> <span class="hljs-attr">style</span>=<span class="hljs-string">"page-break-inside: avoid;"</span>></span>
# 重要章节标题
[完整段落内容,确保不会在段落中间强制分页]
<span class="hljs-tag"></<span class="hljs-name">div</span>></span></code></pre></div>
<h2 id="六-最佳实践总结">六、最佳实践总结</h2>
<ol>
<li><strong>标签管理</strong>:在 Markdown 中使用注释标注分页位置(如<code><!-- 新章开始 --></code>),方便后期修改</li>
<li><strong>导出测试</strong>:重要文档导出后需检查 3 个关键位置:分页处、图表页、章节开头页</li>
<li><strong>工具适配</strong>:复杂样式建议使用 Pandoc + 自定义 CSS 方案,基础分页推荐 Typora 直接导出</li>
<li><strong>移动设备优化</strong>:针对屏幕阅读可减少强制分页,打印场景则需严格控制每页内容量</li>
</ol>
<p>通过合理使用 HTML 分页标签,我们能在保持 Markdown 轻量化写作体验的同时,实现专业级 PDF 文档的排版效果。无论是学术论文的章节分隔,还是商业报告的模块划分,这种「Markdown+HTML」的混合写法都能让你的文档在格式控制上更加游刃有余。建议在实际使用中结合具体场景灵活调整,逐步形成适合自己的文档排版规范。</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[一款笔记软件助力效率提升]]></title>
<guid>2846936e1b694b2ab9bf2399fcc645f0</guid>
<pubDate>Thu, 26 Jun 2025 12:45:28 GMT</pubDate>
<content:encoded><![CDATA[<h2 id="一款笔记软件助力效率提升">一款笔记软件助力效率提升</h2>
<hr />
<div style="page-break-after:always" class="jop-noMdConv"></div>
<h2 id="一-你是否有以下困扰">一、你是否有以下困扰?</h2>
<ol>
<li>工作记录<strong>零散无序</strong></li>
<li>磁盘文件<strong>杂乱无章</strong></li>
<li>知识内容<strong>无法沉淀</strong></li>
<li>成果展现<strong>思绪混乱</strong></li>
</ol>
<hr />
<div style="page-break-after:always" class="jop-noMdConv"></div>
<p><strong>是否想过有一款软件可以解决以上<span style="color:red" class="jop-noMdConv">所有困扰</span>!</strong></p>
<hr />
<div style="page-break-after:always" class="jop-noMdConv"></div>
<h2 id="二-joplin笔记软件解你困扰">二、Joplin笔记软件解你困扰</h2>
<p><a title="https://joplinapp.org" href="https://joplinapp.org">https://joplinapp.org</a></p>
<p>一款免费开源的笔记应用,功能丰富,安全高效,多端同步</p>
<hr />
<div style="page-break-after:always" class="jop-noMdConv"></div>
<section class="jop-noMdConv">
<h2 id="三-软件特定">三、软件特定</h2>
<ol>
<li>完全开源且社区活跃</li>
<li>Markdown语法完美加持</li>
<li>跨平台、跨终端支持</li>
<li>插件资源丰富灵活扩展</li>
</ol>
</section>
<section class="jop-noMdConv">
<h3 id="1-完全开源且社区活跃">1. 完全开源且社区活跃</h3>
<p>Github地址:<a title="https://github.com/laurent22/joplin" href="https://github.com/laurent22/joplin">https://github.com/laurent22/joplin</a></p>
<p><img src="/_resources/c68ef241cf7f43aa9bca8a80ef5b41ff.png" /></p>
</section>
<section class="jop-noMdConv">
<h3 id="2-markdown语法加持">2. Markdown语法加持</h3>
<p>Markdown语法:<a title="https://markdown.com.cn/" href="https://markdown.com.cn/">https://markdown.com.cn/</a></p>
<p><img src="/_resources/d9ee7983f49243c5b1a1b884719def18.png" /></p>
</section>
<section class="jop-noMdConv">
<h3 id="3-跨平台-跨终端支持">3. 跨平台、跨终端支持</h3>
<ul>
<li>PC端(Windos、MacOS、Linux)</li>
<li>移动端(IOS、Android)</li>
</ul>
<p><img src="/_resources/fd0b4627fb4246b0bb2e92ea397b70c6.png" /></p>
</section>
<section class="jop-noMdConv">
<h3 id="4-插件资源丰富灵活扩展">4. 插件资源丰富灵活扩展</h3>
<p>Github:<a title="https://github.com/joplin/plugins" href="https://github.com/joplin/plugins">https://github.com/joplin/plugins</a></p>
<ul>
<li>插件市场如果不能满足需求,自己手搓一个也不是不行</li>
<li><a title="https://joplinapp.org/help/api/get_started/plugins/" href="https://joplinapp.org/help/api/get_started/plugins/">教程:https://joplinapp.org/help/api/get_started/plugins/</a></li>
</ul>
<p><img src="/_resources/0726fcf255884972a17721c327a7bffb.png" /></p>
</section>
<hr />
<div style="page-break-after:always" class="jop-noMdConv"></div>
<section class="jop-noMdConv">
<h2 id="四-效率提升">四、效率提升</h2>
<ol>
<li>灵感、思绪:随心记录</li>
<li>笔记、文件:清晰管理</li>
<li>笔记、知识:便捷沉淀</li>
<li>成果、灵感:酷炫展现</li>
</ol>
<p><code>充分运用好软件能力,助力工作效率提升</code></p>
</section>
<section class="jop-noMdConv">
<h3 id="1-灵感-思绪随心记录">1. 灵感、思绪:随心记录</h3>
<p>Markdown 就像一个 “灵活的思维容器”,既能接住一闪而过的灵感火花,又能在后续打磨中逐渐生长为完整的思路体系,让每一次记录都高效且有价值。</p>
<ul>
<li>恰好Joplin完美兼容Markdown的格式,并且支持Mermaid 语法、Katex 语法、 Latex 语法等</li>
<li>花半天时间轻松拿捏 Markdown 语法,绝对让你收益巨大</li>
</ul>
</section>
<section class="jop-noMdConv">
<h3 id="2-笔记-文件清晰管理">2. 笔记、文件:清晰管理</h3>
<p>Joplin支持 <code>笔记本->笔记</code> 的无限树形目录管理,可以根据自己需求轻松管理自己的笔记内容。</p>
<ul>
<li>安装 <code>Folder Mapping</code> 插件效率翻倍</li>
<li>笔记维护与磁盘文件管理保持思路同步(给大脑减负)</li>
</ul>
<p><img src="/_resources/4f7e99496766427e85ac0f1c8be1a348.png" /></p>
</section>
<section class="jop-noMdConv">
<h3 id="3-笔记-知识便捷沉淀">3. 笔记、知识:便捷沉淀</h3>
<p>日常零碎笔记用Markdown格式化后,能通过标题、列表、加粗等功能梳理条理,让零散信息形成关联网络,且其轻量化特性便于持续整理,轻松实现从碎片化记录到体系化知识库的沉淀。</p>
<ul>
<li>可轻松导出多种格式分享给他人</li>
</ul>
<p><img src="/_resources/bb604d9aea3d4401a2cc2bbd39ef997a.png" /></p>
</section>
<section class="jop-noMdConv">
<h3 id="4-成果-灵感酷炫展现">4. 成果、灵感:酷炫展现</h3>
<p>整理的笔记内容如果要在会上给人演示,以往为了效果还得编写PPT,费时、费力、重复劳作。</p>
<ul>
<li>安装 <code>RevealJS Integration</code> 插件轻松实现笔记像PPT一样播放,效果酷炫,非常亮眼</li>
</ul>
<p><img src="/_resources/1c94805fd9a54e3e927b4c9bb246d96f.png" /></p>
</section>
<hr />
<div style="page-break-after:always" class="jop-noMdConv"></div>
<section class="jop-noMdConv">
<h2 id="五-插件推荐">五、插件推荐</h2>
<ol>
<li>Favorites-收藏</li>
<li>Folder Mapping-文件映射</li>
<li>Outline-目录</li>
<li>Inline TODO-待办工作项</li>
<li>Draw.io-绘图</li>
<li>Kity Minder-思维导图</li>
<li>更多推荐</li>
</ol>
</section>
<section class="jop-noMdConv">
<h3 id="1-favorites-收藏">1. Favorites-收藏</h3>
<ul>
<li>Github:<a title="https://github.com/benji300/joplin-favorites" href="https://github.com/benji300/joplin-favorites">https://github.com/benji300/joplin-favorites</a></li>
</ul>
<p>在额外的面板视图中将任何笔记本、笔记、待办事项、标签或搜索另存为收藏夹,以便快速访问。</p>
<p><img src="/_resources/c2090d6a392c42d695294d553338698b.png" /></p>
</section>
<section class="jop-noMdConv">
<h3 id="2-folder-mapping-文件映射">2. Folder Mapping-文件映射</h3>
<ul>
<li>Github:<a title="https://github.com/yimisunrise/joplin-folder-mapping" href="https://github.com/yimisunrise/joplin-folder-mapping">https://github.com/yimisunrise/joplin-folder-mapping</a></li>
</ul>
<p>能够将 Joplin 中的笔记本目录精准映射到系统指定根目录下的同路径目录。借助该插件,用户可直接从 Joplin 笔记本跳转至对应的系统文件夹,轻松实现笔记目录管理与系统文件夹管理的深度融合,显著提升工作效率。</p>
<p><img src="/_resources/384ca95ca9334881919d7f83624286ac.png" /></p>
</section>
<section class="jop-noMdConv">
<h3 id="3-outline-目录">3. Outline-目录</h3>
<p>Github:<a title="https://github.com/cqroot/joplin-outline" href="https://github.com/cqroot/joplin-outline">https://github.com/cqroot/joplin-outline</a></p>
<p>Joplin的一个markdown outline (TOC)工具条插件,可以直观查看笔记内容的目录结构,帮助文档编写。</p>
<p><img src="/_resources/3f7ebb3555f545eeb71ad74b66939976.png" /></p>
</section>
<section class="jop-noMdConv">
<h3 id="4-inline-todo-待办工作项">4. Inline TODO-待办工作项</h3>
<p>Github:<a title="https://github.com/CalebJohn/joplin-inline-todo" href="https://github.com/CalebJohn/joplin-inline-todo">https://github.com/CalebJohn/joplin-inline-todo</a></p>
<p>在任何笔记中书写待办事项,可以在一个文件中查看所有待办。</p>
<p><img src="/_resources/b4831ad9bfa84179a4f823c5a418e1ff.png" /></p>
</section>
<section class="jop-noMdConv">
<h3 id="5-drawio-绘图">5. Draw.io-绘图</h3>
<p>Github:<a title="https://github.com/marc0l92/joplin-plugin-drawio" href="https://github.com/marc0l92/joplin-plugin-drawio">https://github.com/marc0l92/joplin-plugin-drawio</a></p>
<p>这个插件允许你使用编辑器 diagrams.net (又名draw.io)进行绘图。(该插件需要联网才能工作)</p>
<p><img src="/_resources/89f8dd1377ce4b4c9abbe30d5b484c8c.png" /></p>
<p><img src="/_resources/ba3b173a35c641d282692c2b8c69f85c.png" /></p>
<p>更多的效果</p>
<p><img src="/_resources/1ecee5a8024345fbb3362258ebd00132.png" /></p>
<p><img src="/_resources/81ed546186504df894265fb5c69c6b7d.png" /></p>
</section>
<section class="jop-noMdConv">
<h3 id="6-kity-minder-思维导图">6. Kity Minder-思维导图</h3>
<p>Github:<a title="https://github.com/xeden3/joplin-plugin-kity-minder" href="https://github.com/xeden3/joplin-plugin-kity-minder">https://github.com/xeden3/joplin-plugin-kity-minder</a></p>
<p>可以在笔记中插入思维导图的工具,并且支持随时对思维导图进行再次修改编辑。</p>
<p><img src="/_resources/788c19f11bfe445caebdc137c76af995.png" /></p>
<p><img src="/_resources/7bc78221338f4837afa4356488117da2.png" /></p>
</section>
<section class="jop-noMdConv">
<h3 id="7-更多推荐">7. 更多推荐</h3>
<ul>
<li>Pages Publisher:可以将笔记生成博客网页推送到Github</li>
<li>Quick Links:快速创建指向其他笔记的链接</li>
<li>Journal:为今天或从日期选取器中选择的另一个日期创建或打开便笺</li>
</ul>
<p><code>以上是我个人觉得好用的插件,推荐给大家!</code></p>
<p><code>你也可以在插件超市中寻找适合你自己的插件!</code></p>
</section>
<hr />
<div style="page-break-after:always" class="jop-noMdConv"></div>
<h2 id="六-插件安装">六、插件安装</h2>
<ol>
<li>以安装 <code>Folder Mapping</code> 插件为例,其他插件类似</li>
<li>因 <code>已知</code> 原因,需要 <code>合理上网</code> 才能下载插件</li>
</ol>
<h3 id="1-直接搜索安装">1. 直接搜索安装</h3>
<p>1). 在Joplin中“工具=》选项=》插件”,搜索框中输入 <code>Folder Mapping</code> ,如下图:</p>
<p><img src="/_resources/dac619c713a640899c7d373c51ceead9.png" /></p>
<p>2). 在搜索出的结果中找到插件,点击 <code>安装</code> 即可,安装成功后需要重启软件才能生效。</p>
<h3 id="2-本地文件安装">2. 本地文件安装</h3>
<p>1). 将插件压缩包下载到本地目录并解压</p>
<p><img src="/_resources/53d06411fdf44ccb9aaa70c143baf909.png" /></p>
<blockquote>
<p>其中<code>.jpl</code>的文件就是Joplin插件文件</p>
</blockquote>
<p>2). 在Joplin中“工具=》选项=》插件=》管理您的插件=》从文件安装”,如下图:</p>
<p><img src="/_resources/1dc35eaa8819494cbe69244a85a3c3a4.png" /></p>
<hr />
<div style="page-break-after:always" class="jop-noMdConv"></div>
<h2 id="end">END</h2>
<p><strong>以上内容仅个人使用经验,希望对大家有所帮助!</strong></p>
<p><strong>大家还有其他实用、增效的工具,欢迎一起交流!</strong></p>
<p><strong>个人邮箱</strong></p>
<p>yimisunrise@126.com</p>
<p><strong>个人博客</strong></p>
<p><a title="https://yimisunrise.github.io/" href="https://yimisunrise.github.io/">https://yimisunrise.github.io/</a></p>
<p><code>以上内容仅Joplin的冰山一角,欢迎大家一起探索</code></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[运营管理工具-RACI模型]]></title>
<guid>ae6b8622768240198b7c94694e783aff</guid>
<pubDate>Wed, 25 Jun 2025 01:52:10 GMT</pubDate>
<content:encoded><![CDATA[<p><img src="/_resources/3c29b4c5c9cf48d994be8cb231d1ec43.webp" /></p>
<p><img src="/_resources/0ada37b6e7084360a6283769f032c288.jpeg" /></p>
<p><img src="/_resources/6445edaa2f1f4e8f806fbc9e95b4d09c.jpeg" /></p>
<p><img src="/_resources/5e0aa992b99e417797ab2d5728a2aa2e.jpeg" /></p>
<p><img src="/_resources/e3d59692c3fb4f9fbd75fbde2e41f3f0.jpeg" /></p>
<p><img src="/_resources/dfb6bebede5e4e65ba876cad1ab57816.jpeg" /></p>
<p><img src="/_resources/bd1702df3191433fb5e714ff2e2d1abd.jpeg" /></p>
<p>感谢原作者 @渔野笑歌</p>
<p>如有侵权请立即联系我</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Kdenlive一款免费、开源且功能强大的非线性视频编辑软件]]></title>
<guid>7abe241915204458802512e036084630</guid>
<pubDate>Sat, 07 Jun 2025 02:28:07 GMT</pubDate>
<content:encoded><![CDATA[<p>Kdenlive是一款免费、开源且功能强大的非线性视频编辑软件,支持多轨道编辑、多种视频特效和跨平台使用(Windows、macOS和Linux)。</p>
<hr />
<p>Github</p>
<p><a title="https://github.com/KDE/kdenlive" href="https://github.com/KDE/kdenlive">https://github.com/KDE/kdenlive</a></p>
<hr />
<p><img src="/_resources/b20418ae68c54c8d8f8b1eca67081a04.png" /></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[CRON表达式]]></title>
<guid>2d6b413bcb7c449b8eeeaa841fa59dba</guid>
<pubDate>Tue, 03 Jun 2025 12:12:03 GMT</pubDate>
<content:encoded><![CDATA[<h1 id="cron-表达式参考手册"><strong>CRON 表达式参考手册</strong></h1>
<p>本手册涵盖 <strong>标准 Unix CRON</strong> 和 <strong>扩展 CRON(支持秒)</strong> 的语法、示例及不同系统的支持情况,适用于 Linux、Spring、Quartz 等调度任务配置。</p>
<hr />
<h2 id="1-cron-表达式基础"><strong>1. CRON 表达式基础</strong></h2>
<h3 id="11-标准-unix-cron56-字段不支持秒"><strong>1.1 标准 Unix CRON(5/6 字段,不支持秒)</strong></h3>
<p><strong>语法:</strong></p>
<div><pre class="hljs"><code>* * * * * <span class="hljs-selector-attr">[command]</span>
│ │ │ │ │
│ │ │ │ └── 星期几 (<span class="hljs-number">0</span>-<span class="hljs-number">6</span>, <span class="hljs-number">0</span>=周日)
│ │ │ └──── 月份 (<span class="hljs-number">1</span>-<span class="hljs-number">12</span>)
│ │ └────── 日 (<span class="hljs-number">1</span>-<span class="hljs-number">31</span>)
│ └──────── 小时 (<span class="hljs-number">0</span>-<span class="hljs-number">23</span>)
└────────── 分钟 (<span class="hljs-number">0</span>-<span class="hljs-number">59</span>)</code></pre></div>
<p><strong>示例:</strong></p>
<table>
<thead>
<tr>
<th>表达式</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>* * * * *</code></td>
<td>每分钟执行</td>
</tr>
<tr>
<td><code>*/5 * * * *</code></td>
<td>每 5 分钟执行</td>
</tr>
<tr>
<td><code>0 * * * *</code></td>
<td>每小时执行(整点)</td>
</tr>
<tr>
<td><code>0 3 * * *</code></td>
<td>每天 3:00 AM 执行</td>
</tr>
<tr>
<td><code>0 0 * * 0</code></td>
<td>每周日午夜执行</td>
</tr>
<tr>
<td><code>0 0 1 * *</code></td>
<td>每月 1 号执行</td>
</tr>
<tr>
<td><code>0 9-17 * * 1-5</code></td>
<td>工作日(周一到周五)9AM-5PM 每小时执行</td>
</tr>
</tbody>
</table>
<hr />
<h3 id="12-扩展-cron支持秒7-字段"><strong>1.2 扩展 CRON(支持秒,7 字段)</strong></h3>
<p><strong>语法(如 Spring/Quartz):</strong></p>
<div><pre class="hljs"><code>* * * * * * * <span class="hljs-selector-attr">[command]</span>
│ │ │ │ │ │ │
│ │ │ │ │ │ └── 年(可选)
│ │ │ │ │ └──── 星期几 (<span class="hljs-number">0</span>-<span class="hljs-number">6</span>, <span class="hljs-number">0</span>=周日)
│ │ │ │ └────── 月份 (<span class="hljs-number">1</span>-<span class="hljs-number">12</span>)
│ │ │ └──────── 日 (<span class="hljs-number">1</span>-<span class="hljs-number">31</span>)
│ │ └────────── 小时 (<span class="hljs-number">0</span>-<span class="hljs-number">23</span>)
│ └──────────── 分钟 (<span class="hljs-number">0</span>-<span class="hljs-number">59</span>)
└────────────── 秒 (<span class="hljs-number">0</span>-<span class="hljs-number">59</span>)</code></pre></div>
<p><strong>示例:</strong></p>
<table>
<thead>
<tr>
<th>表达式</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>*/10 * * * * *</code></td>
<td>每 10 秒执行</td>
</tr>
<tr>
<td><code>0 */30 * * * *</code></td>
<td>每 30 分钟执行(整点 + 30 分)</td>
</tr>
<tr>
<td><code>0 0 * * * *</code></td>
<td>每小时整点执行</td>
</tr>
<tr>
<td><code>0 30 9 * * *</code></td>
<td>每天 9:30 AM 执行</td>
</tr>
<tr>
<td><code>0 0 12 * * ?</code></td>
<td>每天中午 12 点执行(Quartz 风格)</td>
</tr>
</tbody>
</table>
<hr />
<h2 id="2-特殊字符说明"><strong>2. 特殊字符说明</strong></h2>
<table>
<thead>
<tr>
<th>字符</th>
<th>说明</th>
<th>示例</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>*</code></td>
<td>任意值</td>
<td><code>* * * * *</code>(每分钟)</td>
</tr>
<tr>
<td><code>,</code></td>
<td>多个值</td>
<td><code>0 3,15 * * *</code>(3AM 和 3PM)</td>
</tr>
<tr>
<td><code>-</code></td>
<td>范围</td>
<td><code>0 9-17 * * *</code>(9AM-5PM 每小时)</td>
</tr>
<tr>
<td><code>/</code></td>
<td>间隔</td>
<td><code>*/5 * * * *</code>(每 5 分钟)</td>
</tr>
<tr>
<td><code>?</code></td>
<td>不指定(仅用于日/周)</td>
<td><code>0 0 * * ?</code>(每天午夜)</td>
</tr>
</tbody>
</table>
<hr />
<h2 id="3-不同系统的-cron-支持"><strong>3. 不同系统的 CRON 支持</strong></h2>
<table>
<thead>
<tr>
<th>系统/工具</th>
<th>是否支持秒</th>
<th>示例</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Linux Cron</strong></td>
<td>❌ 不支持</td>
<td><code>* * * * *</code></td>
</tr>
<tr>
<td><strong>Spring Cron</strong></td>
<td>✅ 支持</td>
<td><code>0/10 * * * * *</code>(每 10 秒)</td>
</tr>
<tr>
<td><strong>Quartz Scheduler</strong></td>
<td>✅ 支持</td>
<td><code>0 */2 * * * ?</code>(每 2 分钟)</td>
</tr>
<tr>
<td><strong>AWS CloudWatch</strong></td>
<td>❌ 不支持</td>
<td><code>rate(5 minutes)</code></td>
</tr>
<tr>
<td><strong>Kubernetes CronJob</strong></td>
<td>❌ 不支持</td>
<td><code>*/5 * * * *</code></td>
</tr>
</tbody>
</table>
<hr />
<h2 id="4-常见任务示例"><strong>4. 常见任务示例</strong></h2>
<h3 id="41-标准-unix-cron"><strong>4.1 标准 Unix CRON</strong></h3>
<table>
<thead>
<tr>
<th>任务</th>
<th>表达式</th>
</tr>
</thead>
<tbody>
<tr>
<td>每 30 分钟执行</td>
<td><code>*/30 * * * *</code></td>
</tr>
<tr>
<td>每天 3:15 AM 执行</td>
<td><code>15 3 * * *</code></td>
</tr>
<tr>
<td>每周一 8:00 AM 执行</td>
<td><code>0 8 * * 1</code></td>
</tr>
<tr>
<td>每月 1 号 0:00 执行</td>
<td><code>0 0 1 * *</code></td>
</tr>
</tbody>
</table>
<h3 id="42-扩展-cron支持秒"><strong>4.2 扩展 CRON(支持秒)</strong></h3>
<table>
<thead>
<tr>
<th>任务</th>
<th>表达式</th>
</tr>
</thead>
<tbody>
<tr>
<td>每 15 秒执行</td>
<td><code>*/15 * * * * *</code></td>
</tr>
<tr>
<td>每 2 小时的第 30 分钟执行</td>
<td><code>0 30 */2 * * *</code></td>
</tr>
<tr>
<td>每天 10:30:45 PM 执行</td>
<td><code>45 30 22 * * *</code></td>
</tr>
</tbody>
</table>
<hr />
<h2 id="5-如何在-linux-实现秒级任务"><strong>5. 如何在 Linux 实现秒级任务?</strong></h2>
<p>标准 <strong>Linux Cron</strong> 不支持秒,但可以通过以下方式模拟:</p>
<h3 id="方法-1使用-sleep"><strong>方法 1:使用 <code>sleep</code></strong></h3>
<div><pre class="hljs"><code><span class="hljs-comment"># 每 30 秒执行一次(每分钟运行 2 次)</span>
* * * * * /path/to/<span class="hljs-built_in">command</span>
* * * * * sleep 30; /path/to/<span class="hljs-built_in">command</span></code></pre></div>
<h3 id="方法-2使用-watch"><strong>方法 2:使用 <code>watch</code></strong></h3>
<div><pre class="hljs"><code>watch -n 30 /path/to/<span class="hljs-built_in">command</span></code></pre></div>
<hr />
<h2 id="6-总结"><strong>6. 总结</strong></h2>
<ul>
<li><strong>标准 Unix CRON</strong>(5/6 字段)不支持秒,适用于 Linux 定时任务。</li>
<li><strong>扩展 CRON</strong>(7 字段)支持秒,适用于 Spring、Quartz 等调度框架。</li>
<li>不同系统对 CRON 的支持不同,需根据环境选择合适的表达式。</li>
</ul>
<p><strong>推荐工具:</strong></p>
<ul>
<li><strong>Linux 定时任务</strong> → 标准 <code>crontab</code></li>
<li><strong>Java/Spring 任务</strong> → <code>@Scheduled(cron = "0/10 * * * * *")</code></li>
<li><strong>高级调度</strong> → <strong>Quartz Scheduler</strong></li>
</ul>
<hr />
<p><strong>📌 提示:</strong> 在线 CRON 表达式生成器:</p>
<ul>
<li><a title="https://crontab.guru/" href="https://crontab.guru/">Crontab Guru</a>(标准 CRON)</li>
<li><a title="https://www.freeformatter.com/cron-expression-generator-quartz.html" href="https://www.freeformatter.com/cron-expression-generator-quartz.html">Spring Cron Generator</a>(支持秒)</li>
</ul>
]]></content:encoded>
</item>
<item>
<title><![CDATA[ControlloidClient-一款开源移动模拟PS2的APP]]></title>
<guid>ed87b7721bf346b28574a98a5ee4e38f</guid>
<pubDate>Sun, 01 Jun 2025 03:20:59 GMT</pubDate>
<content:encoded><![CDATA[<p>一款开源移动应用程序,适用于 PC 游戏体验,支持 Linux 和 Windows 系统。可通过 WiFi、蓝牙、USB 等多种连接方式将手机与电脑无缝连接,甚至支持通过互联网远程控制。其核心功能包括模拟 PS2 控制器的所有按钮(除 L3 和 R3 外),支持多客户端连接,以及可自定义的模拟摇杆死区设置等。</p>
<hr />
<p>Controlloid - Client 可以通过以下方式下载:</p>
<ul>
<li><strong>F-Droid</strong>:可以访问<a title="https://mvgorcum.gitlab.io/fdroid-website/en/packages/com.controlloid/" href="https://mvgorcum.gitlab.io/fdroid-website/en/packages/com.controlloid/">F-Droid 官方网站</a>,在页面中找到 Controlloid - Client 进行下载。推荐安装 F - Droid 客户端,通过客户端下载安装 Controlloid - Client,这样能接收更新通知且更安全。</li>
<li><strong>GitHub</strong>6:访问<a title="https://github.com/experiment322/controlloid-client" href="https://github.com/experiment322/controlloid-client">Controlloid - Client 的 GitHub 页面</a>,在页面中查找相关的下载链接或说明进行下载。4</li>
</ul>
<hr />
<p><img src="/_resources/5f7b47a4984043258d17a480a07d902d.jpg" /></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[APT 和 DPKG 常用操作命令]]></title>
<guid>d3802d6aada544aa9077fbe4e2f1605c</guid>
<pubDate>Tue, 27 May 2025 11:03:22 GMT</pubDate>
<content:encoded><![CDATA[<h1 id="apt-和-dpkg-常用操作命令手册"><strong>APT 和 DPKG 常用操作命令手册</strong></h1>
<p>APT(Advanced Package Tool)和 DPKG(Debian Package)是 Debian/Ubuntu 系统中最常用的包管理工具。</p>
<ul>
<li><strong>APT</strong>:高级工具,用于在线安装、升级、管理依赖。</li>
<li><strong>DPKG</strong>:底层工具,直接操作 <code>.deb</code> 包,不处理依赖关系。</li>
</ul>
<hr />
<h2 id="1-apt-常用命令"><strong>1. APT 常用命令</strong></h2>
<h3 id="11-更新软件包列表"><strong>1.1 更新软件包列表</strong></h3>
<div><pre class="hljs"><code>sudo apt update <span class="hljs-comment"># 更新可用软件包列表(不升级软件)</span></code></pre></div>
<h3 id="12-升级软件包"><strong>1.2 升级软件包</strong></h3>
<div><pre class="hljs"><code>sudo apt upgrade <span class="hljs-comment"># 升级所有可升级的软件包(不删除旧包)</span>
sudo apt full-upgrade <span class="hljs-comment"># 升级并处理依赖冲突(可能删除旧包)</span>
sudo apt dist-upgrade <span class="hljs-comment"># 同 full-upgrade(Ubuntu/Debian 推荐)</span></code></pre></div>
<h3 id="13-安装软件"><strong>1.3 安装软件</strong></h3>
<div><pre class="hljs"><code>sudo apt install <package> <span class="hljs-comment"># 安装指定软件包</span>
sudo apt install <package>=<version> <span class="hljs-comment"># 安装特定版本</span>
sudo apt install <package1> <package2> <span class="hljs-comment"># 安装多个软件</span></code></pre></div>
<h3 id="14-卸载软件"><strong>1.4 卸载软件</strong></h3>
<div><pre class="hljs"><code>sudo apt remove <package> <span class="hljs-comment"># 卸载软件但保留配置文件</span>
sudo apt purge <package> <span class="hljs-comment"># 卸载并删除配置文件(彻底清理)</span>
sudo apt remove --purge <package> <span class="hljs-comment"># 同上(purge 的另一种写法)</span></code></pre></div>
<h3 id="15-清理无用包"><strong>1.5 清理无用包</strong></h3>
<div><pre class="hljs"><code>sudo apt autoremove <span class="hljs-comment"># 删除不再需要的依赖包(保留配置)</span>
sudo apt autoremove --purge <span class="hljs-comment"># 删除依赖包及其配置文件</span>
sudo apt clean <span class="hljs-comment"># 删除所有已下载的 .deb 包(/var/cache/apt/archives)</span>
sudo apt autoclean <span class="hljs-comment"># 仅删除旧版本的 .deb 包</span></code></pre></div>
<h3 id="16-搜索软件"><strong>1.6 搜索软件</strong></h3>
<div><pre class="hljs"><code>apt search <keyword> <span class="hljs-comment"># 搜索软件包(支持模糊匹配)</span>
apt show <package> <span class="hljs-comment"># 查看软件包详细信息</span>
apt list --installed <span class="hljs-comment"># 列出所有已安装的软件包</span>
apt list --upgradable <span class="hljs-comment"># 列出可升级的软件包</span></code></pre></div>
<h3 id="17-修复依赖问题"><strong>1.7 修复依赖问题</strong></h3>
<div><pre class="hljs"><code>sudo apt --fix-broken install <span class="hljs-comment"># 修复依赖问题</span>
sudo apt install -f <span class="hljs-comment"># 同上</span></code></pre></div>
<hr />
<h2 id="2-dpkg-常用命令"><strong>2. DPKG 常用命令</strong></h2>
<h3 id="21-安装-deb-包"><strong>2.1 安装 .deb 包</strong></h3>
<div><pre class="hljs"><code>sudo dpkg -i <package.deb> <span class="hljs-comment"># 安装本地 .deb 包(不处理依赖)</span>
sudo apt install -f <span class="hljs-comment"># 如果依赖缺失,用此命令修复</span></code></pre></div>
<h3 id="22-卸载软件"><strong>2.2 卸载软件</strong></h3>
<div><pre class="hljs"><code>sudo dpkg -r <package> <span class="hljs-comment"># 卸载软件(保留配置文件)</span>
sudo dpkg -P <package> <span class="hljs-comment"># 彻底卸载(删除软件和配置)</span></code></pre></div>
<h3 id="23-查询软件包"><strong>2.3 查询软件包</strong></h3>
<div><pre class="hljs"><code>dpkg -l <span class="hljs-comment"># 列出所有已安装的软件包</span>
dpkg -l | grep <keyword> <span class="hljs-comment"># 搜索已安装的包</span>
dpkg -s <package> <span class="hljs-comment"># 查看软件包状态</span>
dpkg -L <package> <span class="hljs-comment"># 列出软件包安装的文件</span>
dpkg -S <file> <span class="hljs-comment"># 查找某个文件属于哪个包</span></code></pre></div>
<h3 id="24-解压-deb-包不安装"><strong>2.4 解压 .deb 包(不安装)</strong></h3>
<div><pre class="hljs"><code>dpkg -x <package.deb> <dir> <span class="hljs-comment"># 解压 .deb 包到指定目录</span>
dpkg -e <package.deb> <dir> <span class="hljs-comment"># 提取 .deb 的控制信息(DEBIAN/ 目录)</span></code></pre></div>
<h3 id="25-修复损坏的包"><strong>2.5 修复损坏的包</strong></h3>
<div><pre class="hljs"><code>sudo dpkg --configure -a <span class="hljs-comment"># 尝试修复未完成的安装</span></code></pre></div>
<hr />
<h2 id="3-apt-和-dpkg-结合使用"><strong>3. APT 和 DPKG 结合使用</strong></h2>
<h3 id="31-下载-deb-包但不安装"><strong>3.1 下载 .deb 包但不安装</strong></h3>
<div><pre class="hljs"><code>apt download <package> <span class="hljs-comment"># 下载 .deb 包到当前目录</span></code></pre></div>
<h3 id="32-查看软件包的依赖"><strong>3.2 查看软件包的依赖</strong></h3>
<div><pre class="hljs"><code>apt depends <package> <span class="hljs-comment"># 查看依赖哪些包</span>
apt rdepends <package> <span class="hljs-comment"># 查看哪些包依赖它</span></code></pre></div>
<h3 id="33-重新配置已安装的包"><strong>3.3 重新配置已安装的包</strong></h3>
<div><pre class="hljs"><code>sudo dpkg-reconfigure <package> <span class="hljs-comment"># 重新运行软件包的配置(如 tzdata)</span></code></pre></div>
<hr />
<h2 id="4-高级用法"><strong>4. 高级用法</strong></h2>
<h3 id="41-锁定软件包版本防止自动升级"><strong>4.1 锁定软件包版本(防止自动升级)</strong></h3>
<div><pre class="hljs"><code>sudo apt-mark hold <package> <span class="hljs-comment"># 锁定版本</span>
sudo apt-mark unhold <package> <span class="hljs-comment"># 解除锁定</span>
sudo apt-mark showhold <span class="hljs-comment"># 查看锁定的包</span></code></pre></div>
<h3 id="42-查看软件包日志"><strong>4.2 查看软件包日志</strong></h3>
<div><pre class="hljs"><code>cat /var/<span class="hljs-built_in">log</span>/apt/history.log <span class="hljs-comment"># 查看 APT 操作历史</span>
cat /var/<span class="hljs-built_in">log</span>/dpkg.log <span class="hljs-comment"># 查看 DPKG 操作历史</span></code></pre></div>
<h3 id="43-强制降级软件包"><strong>4.3 强制降级软件包</strong></h3>
<div><pre class="hljs"><code>sudo apt install <package>=<version> <span class="hljs-comment"># 指定版本安装</span></code></pre></div>
<h3 id="44-额外清理残留配置"><strong>4.4 额外清理残留配置</strong></h3>
<p>即使使用 --purge,某些残留的配置文件可能仍会留在系统中。可以使用以下命令清理:</p>
<div><pre class="hljs"><code>dpkg -l | grep <span class="hljs-string">'^rc'</span> | awk <span class="hljs-string">'{print $2}'</span> | sudo xargs dpkg --purge</code></pre></div>
<hr />
<h2 id="5-总结"><strong>5. 总结</strong></h2>
<table>
<thead>
<tr>
<th><strong>功能</strong></th>
<th><strong>APT 命令</strong></th>
<th><strong>DPKG 命令</strong></th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>安装</strong></td>
<td><code>apt install</code></td>
<td><code>dpkg -i</code></td>
</tr>
<tr>
<td><strong>卸载</strong></td>
<td><code>apt remove/purge</code></td>
<td><code>dpkg -r/-P</code></td>
</tr>
<tr>
<td><strong>查询</strong></td>
<td><code>apt list/show</code></td>
<td><code>dpkg -l/-s</code></td>
</tr>
<tr>
<td><strong>修复</strong></td>
<td><code>apt -f install</code></td>
<td><code>dpkg --configure -a</code></td>
</tr>
<tr>
<td><strong>清理</strong></td>
<td><code>apt autoremove</code></td>
<td><code>dpkg -P</code></td>
</tr>
</tbody>
</table>
<p><strong>推荐使用 APT</strong>(自动处理依赖),<strong>DPKG 仅用于直接操作 .deb 包</strong>。</p>
<p>希望这份手册能帮助你高效管理 Debian/Ubuntu 软件包! 🚀</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[2.5寸双层PCB重山AT32圈圈机]]></title>
<guid>5f49f2733af34a9da801f3dd6aa5cb24</guid>
<pubDate>Sat, 22 Mar 2025 04:07:12 GMT</pubDate>
<content:encoded><![CDATA[<p>本机2.5寸穿越机的机架主体结构,采用双层 PCB 结合 3D 打印圈的设计方案。我的目标是以最经济的方式,打造出一款对我而言最为便捷且稳定的小飞机。它具有以下几个显著特点:炸机成本低,配件复用度高,飞行稳定性佳,安全性强。</p>
<hr />
<h2 id="一-配置清单">一、配置清单</h2>
<table>
<thead>
<tr>
<th>配件类型</th>
<th>品牌/型号</th>
<th>数量</th>
<th>价格</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td>飞控</td>
<td>重山AT32 F435RGT7飞控</td>
<td>1</td>
<td>约 120元 / 个</td>
<td></td>
</tr>
<tr>
<td>电调</td>
<td>Aocoda-RC MINI</td>
<td>1</td>
<td>约 120元 / 个</td>
<td></td>
</tr>
<tr>
<td>图传</td>
<td>5.8G EWRF模拟图传接收</td>
<td>1</td>
<td>约 70元 / 个</td>
<td></td>
</tr>
<tr>
<td>电机</td>
<td>1104白菜电机</td>
<td>4</td>
<td>约 12元 / 个</td>
<td>更推荐1404的电机</td>
</tr>
<tr>
<td>接收</td>
<td>2.4G ELRS DIY接收机</td>
<td>1</td>
<td>约 25元 / 个</td>
<td></td>
</tr>
<tr>
<td>机架</td>
<td>2.5寸PCB仿怪像机架</td>
<td>1</td>
<td>0元 / 个</td>
<td>嘉立创PCB免费打印</td>
</tr>
<tr>
<td>机架</td>
<td>3D打印保护圈整套</td>
<td>1</td>
<td>约 48元 / 套</td>
<td>嘉立创3D打印,8001(半透) SLA光固化</td>
</tr>
<tr>
<td>桨叶</td>
<td>2345三叶桨</td>
<td>4</td>
<td>约 20元 / 20个</td>
<td></td>
</tr>
<tr>
<td>螺柱</td>
<td>M2 0.8mm螺柱</td>
<td>4</td>
<td></td>
<td></td>
</tr>
<tr>
<td>螺柱</td>
<td>M2 10mm螺柱</td>
<td>6</td>
<td></td>
<td></td>
</tr>
<tr>
<td>螺帽</td>
<td>M2</td>
<td></td>
<td></td>
<td>待补充</td>
</tr>
<tr>
<td>螺丝</td>
<td>M2</td>
<td></td>
<td></td>
<td>待补充</td>
</tr>
</tbody>
</table>
<p> </p>
<h2 id="二-整套价格">二、整套价格</h2>
<p>总计:约450元 / 套</p>
<p> </p>
<h2 id="三-整机重量">三、整机重量</h2>
<ul>
<li>单机重量:约146g</li>
<li>带电重量:约218g (850mAh电池)</li>
</ul>
<p> </p>
<hr />
<h2 id="四-成品展示">四、成品展示</h2>
<p><img src="/_resources/cd99ad526cdb423ea92bac6922aadb76.jpg" /></p>
<p><img src="/_resources/6f834d5ae2b245b6aba2ffc3d7fc9a7f.jpg" /></p>
<p><img src="/_resources/a9aa7607ccf44be6971b290030660afa.jpg" /></p>
<h2 id="五-验证结果">五、验证结果</h2>
<h3 id="20250321首飞尝试">(20250321)首飞尝试</h3>