Skip to content

Commit

Permalink
update imported
Browse files Browse the repository at this point in the history
  • Loading branch information
LynxStirp committed Jun 12, 2021
1 parent f3d67f4 commit 7e4096a
Show file tree
Hide file tree
Showing 74 changed files with 378 additions and 186 deletions.
13 changes: 7 additions & 6 deletions config.toml
Expand Up @@ -24,6 +24,8 @@ disablePathToLower = true
uglyURLs = true
language = "zh-cn"

rssLimit = 10

[author]
name = "尚弟"

Expand All @@ -48,7 +50,7 @@ language = "zh-cn"
weight = 20

[[menu.main]]
identifier = "archieves"
identifier = "archives"
name = "归档"
title = "归档"
url = "/post/"
Expand All @@ -58,7 +60,7 @@ language = "zh-cn"
identifier = "rss"
name = "RSS"
title = "RSS"
url = "/rss.xml"
url = "/post/rss.xml"
weight = 40
target = "_blank"

Expand All @@ -82,7 +84,7 @@ language = "zh-cn"

since = "2010" # Site creation time # 站点建立时间
author = "尚弟"
copyright = "© Copyright 2021 by 尚弟, Designed by 尚弟"
copyright = "© Copyright 2021 by 尚弟"
dark = "auto"
highlight = true
# 指定 git 仓库地址,可以生成指向最近更新的 git commit 的链接,需要将 enableGitInfo 设置成 true.
Expand Down Expand Up @@ -122,7 +124,7 @@ language = "zh-cn"

postMetaInFooter = true # contain author, lastMod, markdown link, license # 包含作者,上次修改时间,markdown链接,许可信息
linkToMarkDown = false # Only effective when hugo will output .md files. # 链接到markdown原始文件(仅当允许hugo生成markdown文件时有效)
contentCopyright = '© Copyright 2021 by 尚弟, Designed by 尚弟' # e.g. '<a rel="license noopener" href="https://creativecommons.org/licenses/by-nc-nd/4.0/" target="_blank">CC BY-NC-ND 4.0</a>'
contentCopyright = '© Copyright 2021 by 尚弟' # e.g. '<a rel="license noopener" href="https://creativecommons.org/licenses/by-nc-nd/4.0/" target="_blank">CC BY-NC-ND 4.0</a>'

changyanAppid = "" # Changyan app id # 畅言
changyanAppkey = "" # Changyan app key
Expand Down Expand Up @@ -262,8 +264,7 @@ language = "zh-cn"
date = [":filename", ":default", ":fileModTime"]

[permalinks]
'post/imported' = "/:filename"
'post/.' = "/posts/:filename"
'post/.' = "/posts/:title"

[outputFormats]
[outputFormats.RSS]
Expand Down
5 changes: 3 additions & 2 deletions content/about.md
@@ -1,9 +1,10 @@
---
title: "关于我"
date: 2021-04-04T20:54:47Z
lastModified: 2021-06-10T20:54:47Z
date: 2021-03-04T20:54:47Z
lastmod: 2021-06-10T20:54:47Z
draft: false
falsemenu: "main"
hiddenfromhomepage: true
weight: 60
---

Expand Down
6 changes: 4 additions & 2 deletions content/blogrolls.md
@@ -1,12 +1,14 @@
---
title: "友情链接"
date: 2021-04-04T20:54:47Z
lastModified: 2021-04-04T20:54:47Z
lastmod: 2021-03-04T20:54:47Z
draft: false
falsemenu: "main"
hiddenfromhomepage: true
weight: 50
---
友情链接:
-----

[木杉的博客](http://mushanshitiancai.github.io/atom.xml) 一个持续上进的程序员
[木杉的博客](http://mushanshitiancai.github.io/atom.xml) 一个持续上进的程序员

54 changes: 54 additions & 0 deletions content/post/2021-04-05-从Simple迁移到Hugo.md
@@ -0,0 +1,54 @@
---
title: "从Simple迁移到Hugo"
date: 2021-04-05T17:54:47Z
lastmod: 2021-06-10T17:54:47Z
draft: false
toc: true
tags: ["hugo","Simple", "迁移"]
---

## 初试Hugo

  Simple由于GitHub登录API变化而无法登录使用,已经过去1年多,我原本计划修复Simple的登陆方案的,后来实在是懒癌发作外加似乎需要服务器支持才能完成GitHub的新版登录API,索性弃坑重新寻找写博客的方法。恰好前两天看到了[Keep Coding](https://liujiacai.net/)的博客,稍微了解了一下,觉得Hugo应该是比Hexo,或者说基于NodeJS的任意方案都要好一些,毕竟依赖会少不少,而且实在不行就用docker跑编译,总之是省了不少本地依赖的事情。

  通常来说,迁移博客最基础的,就是将文章迁移过来。Simple作为基于GitHub API的静态博客,它自己是没有数据库来存储文章的,而是将markdown作为注释放在正文里的。我们恰好可以借助这一特性,将相应的md文件提取出来:

```bash
cat fileName.html | awk '/<!-- markdown -->/,/<!-- markdown end -->/' > exports/fileName.md
```

  怎么遍历文件名就不赘述了,bash脚本跑循环就好。

  不过这样导出的文件里还有markdown的注解,可以使用如下命令来清除:

```bash
sed -i "s/<!-- markdown -->//g" *.md
sed -i "s/<!-- markdown end -->//g" *.md
```

  那么当我之前的博客都备份好了,怎么导入到Hugo里呢?

  先不说Hugo的站点结构如何,这个问题各位观众那都可以慢慢调整;最重要的是Hugo的md文件是有格式的,你得遵照一定的格式导入,也就是每篇文章开头的元数据,至少包含title,date。此外我希望导入以后,网页的URL还能按照原先的URL存在,避免死链.那怎么办呢?

  原来Simple有一个main.json是专门存储元数据的,我们可以从它解析到相应的参数,填入目标文档。经过一番探究,我写了如下的脚本生成相应的目标文档:

```bash
echo "---" >hugo/content/imported/$filename.md && \
echo "title: \"$(jq -r '.posts|map(select(.path == "'$filename'.html").title)[0]' main.json)\"" >> hugo/content/imported/$filename.md && \
echo "date: \"$(jq -r '.posts|map(select(.path == "'$filename'.html").date)[0]' main.json)T00:00:00Z\"" >> hugo/content/imported/$filename.md && \
echo "draft: false" >> hugo/content/imported/$filename.md && \
echo "tags: [\"$(jq -r '.posts|map(select(.path == "'$filename'.html").tags)[0]|split(" ")|join("\",\"")' main.json)\"]" >> hugo/content/imported/$filename.md && \
echo "url: $filename.html" >> hugo/content/imported/$filename.md && \
echo "---" >> hugo/content/imported/$filename.md && cat exports/$filename.md >> hugo/content/imported/$filename.md
```

  通过上述脚本指定的url, 我们导入的文章url仍然在根目录下,不会受到影响,这样的url就跟原来的simple的url一致,保证迁移后搜索引擎的链接仍然有效。

## 使用Even
  据我观察, Hugo 使用 Even 主题的博客很多,简单了解了一下,这个主题已经比较完善了.但是我刚刚开始使用它,咦,目录空了,囧. 谷歌一下,发现它必须使用post目录,而不是默认的posts目录,更不支持imported目录了.最简单的办法就是把imported目录放到post目录下,以后新建的文章就放到post目录下就好啦.

  但是随后就发现生成的rss文章包括了关于我这样的页面,这个问题还是比较严重的.不过默认hugo生成的rss是包含区域rss的,因此直接使用post/rss.xml就可以只生成post目录下的rss文件了.

## 解决tags和archive空白问题

  不知道为什么,当我点击tags和archive目录的时候,前者是404,后者是空白页.既然
5 changes: 4 additions & 1 deletion content/post/imported/2018-08-19.md
Expand Up @@ -2,8 +2,10 @@
title: "2018-08-19"
date: "2018-08-19T00:00:00Z"
draft: false
tag: ["每周分享"]
tags: ["每周分享"]
url: 2018-08-19.html
---

这是我第一次编写每周分享。这个点子是受到阮一峰阮老师的每周分享启发,考虑到自己每周看了很多消息和工具,正好也能借助这个机会总结留下有价值的资讯。只要能帮助读者了解最新的研发消息,或者某天能用来总结查看,都算是没有白写每周分享。正常情况下我会在周五晚上发出这个系列的文章。(第一期就不正常……)

我的每周分享会包括以下几点内容:本周内学会的一些Java最新的研发知识;发现的新工具;研发人员可能会关注的新闻。其中研发新闻是随缘项目,一方面我也不太关注没有生产力的新闻,一方面也没有太大的留存价值,只有特别关注到的新闻才会分享给大家。Warning:由于我的消息来源也包括阮老师,所以肯定有些内容是来自阮老师的网站,而且如果内容不带有阮老师的观点的话,来源会写真正的消息来源,而不是阮老师的网站;这主要是考虑读者不用多次跳转找出处,而非对阮老师的劳动不尊重,相信阮老师也会见谅的。
Expand Down Expand Up @@ -37,3 +39,4 @@ Java新姿势:
新闻资讯:

1. 推荐一下我这周从阮老师那里看到的文章,[API 之下](http://www.ruanyifeng.com/blog/2018/08/api-below.html)。乍看之下似乎是讲软件的,但是其实是猜测未来 AI 普及后财富分配的一个可能的后果,非常有见解。

5 changes: 4 additions & 1 deletion content/post/imported/2018-08-24.md
Expand Up @@ -2,8 +2,10 @@
title: "2018-08-24"
date: "2018-08-24T00:00:00Z"
draft: false
tag: ["每周分享"]
tags: ["每周分享"]
url: 2018-08-24.html
---

下边是8月24日的每周分享:

Java新姿势:
Expand All @@ -23,3 +25,4 @@ Java新姿势:
新闻资讯:

1. [误删除dev下的文件怎么办](https://lujun9972.github.io/blog/2018/08/18/%E8%AF%AF%E5%88%A0%E9%99%A4dev%E4%B8%8B%E7%89%B9%E6%AE%8A%E6%96%87%E4%BB%B6%E6%80%8E%E4%B9%88%E5%8A%9E/) 如果不小心删除了/dev/下的文件,也就意味着你电脑上的一些组件无法使用了。本文介绍了你如何可以恢复它们。

5 changes: 4 additions & 1 deletion content/post/imported/2018-09-01.md
Expand Up @@ -2,8 +2,10 @@
title: "2018-09-01"
date: "2018-09-01T00:00:00Z"
draft: false
tag: ["每周分享"]
tags: ["每周分享"]
url: 2018-09-01.html
---

下边是9月01日的每周分享:

Java新姿势:
Expand Down Expand Up @@ -33,3 +35,4 @@ Java新姿势:
1. [经典不灭,开源项目带你在各平台上重温 Windows 95 - 开源中国](https://www.oschina.net/news/99299/windows95-open-source-project) 大概很多人都没有用过 Windows95,有人用 Electron 制作了这款 Win95的虚拟机的前端界面,目测虚拟机是 bochs 下载地址:[Releases · felixrieseberg/windows95 · GitHub](https://github.com/felixrieseberg/windows95/releases)

2. [几个大型网站的Feeds(Timeline)设计简单对比](https://mp.weixin.qq.com/s/NamsJHwEOdF3GgGE5sM4gg) 很抱歉,这个是我最近比较关注的话题,看起来也不是最新的文章了,但是多关注一下其他社区的设计对于我们自己的社区就会多一些思考。

5 changes: 4 additions & 1 deletion content/post/imported/2018-09-09.md
Expand Up @@ -2,8 +2,10 @@
title: "2018-09-09"
date: "2018-09-10T00:00:00Z"
draft: false
tag: ["每周分享"]
tags: ["每周分享"]
url: 2018-09-09.html
---

Java新姿势:
-------------
1. [如何才能写出好的软件设计文档?](http://www.infoq.com/cn/articles/how-to-write-a-good-software-design-document) 做了这么多年的 Java 开发,除了在恶补测试,我想最需要恶补的其实是设计。我们虽然没有设计也做了这么多年的系统,但是没有先行设计,总是缺乏对系统方向的把握。
Expand All @@ -30,3 +32,4 @@ Java新姿势:
2. [PhpStorm troubleshooting – ideaVim stops working – William Turrell](https://blog.wturrell.co.uk/phpstorm-ideavim-not-working/) 这个也是我最近遇到的一个情况,idea 使用的 vim 插件突然就不工作了,编辑器回到了原始的状态,但是看插件是安装的,没有任何问题。原来是插件有个工作开关,默认开关还有快捷键,而且这个快捷键跟 Mac 的粘贴非常接近,囧。

3. [研究发现:不靠 cookie,网站也能通过 TLS 协议追踪你 - 开源中国](https://www.oschina.net/news/99768/tracking-users-across-the-web-via-tls-session-resumption) 这个新闻有点恐怖,居然可以不用 cookie 而是通过 TLS 协议进行客户端的识别——这个功能对正常的业务来说没什么帮助,客户说关闭浏览器就关闭了;但是对于广告功能来说,完全可以用来短期跟踪客户,甚至对于手机的浏览器来说,完全可以替代 cookie 的作用了。

5 changes: 4 additions & 1 deletion content/post/imported/2018-09-16.md
Expand Up @@ -2,8 +2,10 @@
title: "2018-09-16"
date: "2018-09-16T00:00:00Z"
draft: false
tag: ["每周分享"]
tags: ["每周分享"]
url: 2018-09-16.html
---

下边是09月16日的每周分享:

Java新姿势:
Expand All @@ -25,3 +27,4 @@ Java新姿势:
3. [archive.org](https://archive.org) 这个是一个更专业的收藏站点,任何没有版权问题的都可以收藏,更是提供了网页运行 dos 程序的能力,真是很厉害。
4. [Windows 2000](https://bellard.org/jslinux/vm.html?url=https://bellard.org/jslinux/win2k.cfg&mem=192&graphic=1&w=1024&h=768)继win95之后,又一个可以在浏览器运行的微软操作系统。
5. [基于consul实现微服务的服务发现和负载均衡 | Tony Bai](https://tonybai.com/2018/09/10/setup-service-discovery-and-load-balance-based-on-consul/) 一个老程序员,老架构师对微服务的服务发现和负载的一个实现方案,可以借鉴。

4 changes: 3 additions & 1 deletion content/post/imported/A-Creation-of-Thinking.md
Expand Up @@ -2,8 +2,10 @@
title: "一个设想的创业点"
date: "2011-05-07T00:00:00Z"
draft: false
tag: ["创业"]
tags: ["创业"]
url: A-Creation-of-Thinking.html
---

  可以用触摸屏替换触摸板。

  首先写一个iPhone程序和xp程序,让iPhone作为xp的多点触摸设备。
Expand Down
@@ -1,14 +1,16 @@
---
title: "二分查找法查找中点的方法(C语言)"
date: "2011-12-07T00:00:00Z"

draft: false
tag: ["C","二分查找"]
tags: ["C","二分查找"]
url: A-Method-To-Find-Midlle-in-Binary-Search-in-C.html
---

  今天跟同事说起二分查找法中常见的一个问题,就是计算中点时会溢出的问题。

  常见的方法(a+b)/2就是铁定会溢出的方法。如果a和b很大,之和超出了它们定义的范围,那么运算结果可能会是负数,这绝对不是我们想要的。

  之后同事说他看到一个算法是(a+b)>1。其实这个问题只能说缓解了溢出的问题,实际问题还是存在的。为啥?比如int,当发生上溢的时候,溢出的进位其实进入了符号位;而右移的时候把符号位移到了第一位,此时计算结果是正确的;但是如果是无符号整型,溢出的时候已经丢弃了进位,右移后结果要少差一半。

  所以最好还是用a+(b-a)/2这样。除二或者右移一位都是可以的。当然,前提是因为我们知道a和b作为数组下标,都是正数,因此b-a不会下溢。如果你的数组奇怪到居然用负数左下标,呃,好吧,a和b做右移或除2处理再相加吧。不过记得要判断两个都是奇数的情况哦!

6 changes: 4 additions & 2 deletions content/post/imported/An-Era-of-USB-Type-C.md
@@ -1,10 +1,11 @@
---
title: "一个USB-C的时代"
date: "2018-06-15T00:00:00Z"

draft: false
tag: ["Type-C"]
tags: ["Type-C"]
url: An-Era-of-USB-Type-C.html
---

最近为了配合在家用电脑的显示器需求,买了一台联想的ThinkVision显示器——[联想(ThinkVision)T27h 27英寸窄边框 ](https://item.jd.com/4702716.html),用了几天,颇有些感想。

首先,这货有一个坏点。显然联想在显示器的品控并不太好,而且国家的政策里坏点是允许的,而且越大的屏幕坏点允许就越多。当然我可以按照京东7天无条件去退换,可是这款显示器推出快一年了,按照系统显示,它的库存不多了,按照二手东的情况,可能剩下的多少有点问题。这款是我唯一能够找到价格比较低,带有USB-Hub功能的USB-C可充电可旋转显示器了(其实还有一款三星的,但是为了老回,必须不买三星的)。还好的是一个坏点并不是太大的问题,如果你观察你自己的显示器,其实上边落满了灰尘,一个坏点的影响就像是一粒灰尘,并不太影响。事实上,当你打开游戏,打开电影的时候,这个坏点根本就看不到。所以这次为二手东接了盘,感觉也还可以接受。
Expand All @@ -22,3 +23,4 @@ tag: ["Type-C"]




6 changes: 4 additions & 2 deletions content/post/imported/BAMG55WHQt1iYrNSBRRh.md
@@ -1,10 +1,11 @@
---
title: "【分享】一个 Java 线程池 bug 引发的 GC 机制思考"
date: "2020-01-02T00:00:00Z"

draft: false
tag: ["Java","分享","线程池","bug"]
tags: ["Java","分享","线程池","bug"]
url: BAMG55WHQt1iYrNSBRRh.html
---

原文地址:[一个 Java 线程池 bug 引发的 GC 机制思考](https://www.infoq.cn/article/BAMG55WHQt1iYrNSBRRh?utm_source=rss&utm_medium=article)

## 问题描述
Expand Down Expand Up @@ -359,3 +360,4 @@ public void execute(Runnable command) {
**原文链接**

**[https://mp.weixin.qq.com/s/idDL9uJJb5KKOFY5tLlyKw](https://mp.weixin.qq.com/s/idDL9uJJb5KKOFY5tLlyKw)**

@@ -1,10 +1,11 @@
---
title: "C语言研究:编写一个函数,返回一个指向另一个函数的指针"
date: "2011-04-24T00:00:00Z"

draft: false
tag: ["C","指针"]
tags: ["C","指针"]
url: C-Study-A-Method-That-Return-A-Pointer-Point-To-An-Other-Method.html
---

有函数int func(int a);
要求编写函数,返回指向func的函数指针。
实现:
Expand Down Expand Up @@ -34,3 +35,4 @@ int main()
}
~~~~


@@ -1,14 +1,16 @@
---
title: "拨公司 VPN 后,指定了外网 dns,却无法访问内网域名的解决办法"
date: "2020-02-02T00:00:00Z"

draft: false
tag: ["VPN","域名","DNS","网络"]
tags: ["VPN","域名","DNS","网络"]
url: Changing_DNS_After_VPN_CAUSE_INTRANET_DOMAIN_Resorve_Fail.html
---

今天我遇到一个情况,就是使用公司 VPN 后再指定家里的 DNS 后,公司的内网域名反而无法访问的问题。

这是因为我家路由器上的 DNSMASQ 配置了rebind_protection,这个选项是指当上级 DNS 返回了内网地址时,会将结果吞掉,并返回 NOERROR。这个选项是为了防止有些无良 ISP 的 DNS 劫持用的,有些路由可能就叫做“防止 DNS 劫持”的功能。

但是公司内网的地址解析肯定不是公网的,但是这个解析又配置在外网环境,导致内网域名也被外网 DNS 解析并返回,导致 DNSMASQ 当成了劫持,返回了 NOERROR。而 NOERROR 对于操作系统来说,就算是这个 DNS 解析到了,不会再询问第二第三 DNS 了,导致第二第三 DNS 就是配置公司的 DNS 也无济于事。

解决方法就是在路由器上关闭此功能,或者在 VPN 的 DNS 里调整一下顺序,将公司的 DNS 放在优先位置。公司的 DNS 会将外网域名解析为 NXDOMAIN,这样就会顺序使用第二第三 DNS 来访问外网了。

6 changes: 4 additions & 2 deletions content/post/imported/Charles-Update-to-4.md
@@ -1,12 +1,14 @@
---
title: "Charles 出4啦"
date: "2016-08-02T00:00:00Z"

draft: false
tag: ["Charles"]
tags: ["Charles"]
url: Charles-Update-to-4.html
---

  很多人用Windows抓Http包的时候都用fiddler,在Mac上用Charles则是最好的选择。

  刚好Charles这两天出第四版了,试了下比原先的UI更线代了,功能也更强大了,而且好像价格也更优惠了。

  于是赶紧买买买,正版计划又前进了一小步,哈哈~

@@ -1,10 +1,11 @@
---
title: "赞同了回答: 被家暴的女人都有什么共同点? 张佳玮的知乎动态"
date: "2018-10-14T00:00:00Z"

draft: false
tag: ["知乎","被删除"]
tags: ["知乎","被删除"]
url: Commons-of-Women-Been-domestic-violence.html
---

还好几日前使用了赞助的 RssHub 关注了[张佳玮](https://www.zhihu.com/people/zhang-jia-wei),看到了他赞的一篇极好的文章,没想到打开后已经被删除。如果不是 Rss,这段文字只能留在极少数人的脑海中。为了留下这篇文章,转载到这里,但是我看不到作者是谁,知乎账号也不能使用,实在无法联系作者授权,只能无奈的说,请作者看到后联系我,非常惭愧。

以下是原文:
Expand Down Expand Up @@ -118,3 +119,4 @@ tag: ["知乎","被删除"]
>只有法律、法规、公平、正义、光明,才能让这个世界变得更好。
>我不要世界改变我,我要改变这个世界,一点点也行。

0 comments on commit 7e4096a

Please sign in to comment.