diff --git a/2014/12/23/my-new-post/index.html b/2014/12/23/my-new-post/index.html index 7310b11b2c..68f43dcf55 100644 --- a/2014/12/23/my-new-post/index.html +++ b/2014/12/23/my-new-post/index.html @@ -436,20 +436,20 @@
- 42 + 43 posts
- 29 + 33 categories
- 49 + 53 tags
@@ -474,7 +474,7 @@
- +
diff --git a/2014/12/24/MFC 模态对话框/index.html b/2014/12/24/MFC 模态对话框/index.html index 9656611f35..04d3f05184 100644 --- a/2014/12/24/MFC 模态对话框/index.html +++ b/2014/12/24/MFC 模态对话框/index.html @@ -308,7 +308,7 @@ @@ -477,20 +477,20 @@
- 42 + 43 posts
- 29 + 33 categories
- 49 + 53 tags
@@ -515,7 +515,7 @@
- +
diff --git a/2015/03/11/Number-Of-1-Bits/index.html b/2015/03/11/Number-Of-1-Bits/index.html index fc6939fc41..13a6c1170d 100644 --- a/2015/03/11/Number-Of-1-Bits/index.html +++ b/2015/03/11/Number-Of-1-Bits/index.html @@ -306,13 +306,10 @@
@@ -461,20 +461,20 @@
- 42 + 43 posts
- 29 + 33 categories
- 49 + 53 tags
@@ -499,7 +499,7 @@
diff --git a/2015/03/11/Reverse-Bits/index.html b/2015/03/11/Reverse-Bits/index.html index 4cb3826a78..9b461a7898 100644 --- a/2015/03/11/Reverse-Bits/index.html +++ b/2015/03/11/Reverse-Bits/index.html @@ -307,13 +307,10 @@
@@ -462,20 +462,20 @@ @@ -500,7 +500,7 @@ diff --git a/2015/03/13/Reverse-Integer/index.html b/2015/03/13/Reverse-Integer/index.html index 033242b7a8..f5f98a7c5c 100644 --- a/2015/03/13/Reverse-Integer/index.html +++ b/2015/03/13/Reverse-Integer/index.html @@ -310,13 +310,10 @@
@@ -465,20 +465,20 @@ @@ -503,7 +503,7 @@ diff --git a/2015/04/14/Add-Two-Number/index.html b/2015/04/14/Add-Two-Number/index.html index a9f9d17be7..8d38f89139 100644 --- a/2015/04/14/Add-Two-Number/index.html +++ b/2015/04/14/Add-Two-Number/index.html @@ -310,13 +310,10 @@
@@ -465,20 +465,20 @@ @@ -503,7 +503,7 @@ diff --git a/2015/04/15/Leetcode-No-3/index.html b/2015/04/15/Leetcode-No-3/index.html index 10a904e899..7263d712c0 100644 --- a/2015/04/15/Leetcode-No-3/index.html +++ b/2015/04/15/Leetcode-No-3/index.html @@ -307,13 +307,10 @@
@@ -462,20 +462,20 @@ @@ -500,7 +500,7 @@ diff --git a/2015/06/22/invert-binary-tree/index.html b/2015/06/22/invert-binary-tree/index.html index 4d43a56681..dd72a51d93 100644 --- a/2015/06/22/invert-binary-tree/index.html +++ b/2015/06/22/invert-binary-tree/index.html @@ -319,10 +319,7 @@ - +
@@ -470,20 +470,20 @@ @@ -508,7 +508,7 @@ diff --git a/2016/07/13/swoole-websocket-test/index.html b/2016/07/13/swoole-websocket-test/index.html index bf5cdd4479..3622dfd9f3 100644 --- a/2016/07/13/swoole-websocket-test/index.html +++ b/2016/07/13/swoole-websocket-test/index.html @@ -469,20 +469,20 @@ user3: @@ -507,7 +507,7 @@ user3: diff --git a/2016/08/14/34-Search-for-a-Range/index.html b/2016/08/14/34-Search-for-a-Range/index.html index 46a8c28c42..ade2753655 100644 --- a/2016/08/14/34-Search-for-a-Range/index.html +++ b/2016/08/14/34-Search-for-a-Range/index.html @@ -308,13 +308,10 @@
@@ -463,20 +463,20 @@ @@ -501,7 +501,7 @@ diff --git a/2016/08/14/docker-mysql-cluster/index.html b/2016/08/14/docker-mysql-cluster/index.html index 39d5595b44..d6225401f5 100644 --- a/2016/08/14/docker-mysql-cluster/index.html +++ b/2016/08/14/docker-mysql-cluster/index.html @@ -449,20 +449,20 @@ @@ -487,7 +487,7 @@ diff --git a/2016/09/29/binary-watch/index.html b/2016/09/29/binary-watch/index.html index f1f81e0193..771105b38e 100644 --- a/2016/09/29/binary-watch/index.html +++ b/2016/09/29/binary-watch/index.html @@ -319,10 +319,7 @@ - +
@@ -471,20 +471,20 @@ @@ -509,7 +509,7 @@ diff --git a/2016/10/11/minimum-size-subarray-sum-209/index.html b/2016/10/11/minimum-size-subarray-sum-209/index.html index 8a6fefb318..582bf40e91 100644 --- a/2016/10/11/minimum-size-subarray-sum-209/index.html +++ b/2016/10/11/minimum-size-subarray-sum-209/index.html @@ -309,10 +309,7 @@ - +
@@ -461,20 +461,20 @@ @@ -499,7 +499,7 @@ diff --git a/2016/10/12/summary-ranges-228/index.html b/2016/10/12/summary-ranges-228/index.html index 913c324122..aad561d601 100644 --- a/2016/10/12/summary-ranges-228/index.html +++ b/2016/10/12/summary-ranges-228/index.html @@ -308,10 +308,7 @@ - +
@@ -460,20 +460,20 @@ @@ -498,7 +498,7 @@ diff --git a/2016/11/10/php-abstract-class-and-interface/index.html b/2016/11/10/php-abstract-class-and-interface/index.html index 9e4b235a97..1e43b74b90 100644 --- a/2016/11/10/php-abstract-class-and-interface/index.html +++ b/2016/11/10/php-abstract-class-and-interface/index.html @@ -455,20 +455,20 @@ @@ -493,7 +493,7 @@ diff --git a/2017/03/28/spark-little-tips/index.html b/2017/03/28/spark-little-tips/index.html index dc9ae97118..375b00f8a4 100644 --- a/2017/03/28/spark-little-tips/index.html +++ b/2017/03/28/spark-little-tips/index.html @@ -444,20 +444,20 @@ @@ -482,7 +482,7 @@ diff --git a/2017/04/25/rabbitmq-tips/index.html b/2017/04/25/rabbitmq-tips/index.html index ddac31e63e..3c59615582 100644 --- a/2017/04/25/rabbitmq-tips/index.html +++ b/2017/04/25/rabbitmq-tips/index.html @@ -456,20 +456,20 @@ @@ -494,7 +494,7 @@ diff --git a/2017/05/09/ambari-summary/index.html b/2017/05/09/ambari-summary/index.html index 95c40bed31..50987a93c8 100644 --- a/2017/05/09/ambari-summary/index.html +++ b/2017/05/09/ambari-summary/index.html @@ -448,20 +448,20 @@ @@ -486,7 +486,7 @@ diff --git a/2019/06/18/openresty/index.html b/2019/06/18/openresty/index.html index 742860aa55..57364c3f49 100644 --- a/2019/06/18/openresty/index.html +++ b/2019/06/18/openresty/index.html @@ -470,20 +470,20 @@ @@ -508,7 +508,7 @@ diff --git a/2019/09/23/AbstractQueuedSynchronizer/index.html b/2019/09/23/AbstractQueuedSynchronizer/index.html index 077a2681ae..b732c7ba94 100644 --- a/2019/09/23/AbstractQueuedSynchronizer/index.html +++ b/2019/09/23/AbstractQueuedSynchronizer/index.html @@ -445,20 +445,20 @@ @@ -483,7 +483,7 @@ diff --git a/2019/12/07/JVM-G1-Part-1/index.html b/2019/12/07/JVM-G1-Part-1/index.html index ade87e047a..51da13ba36 100644 --- a/2019/12/07/JVM-G1-Part-1/index.html +++ b/2019/12/07/JVM-G1-Part-1/index.html @@ -483,20 +483,20 @@ @@ -521,7 +521,7 @@ diff --git a/2019/12/10/Redis-Part-1/index.html b/2019/12/10/Redis-Part-1/index.html index 57987169a9..ce57b17c3b 100644 --- a/2019/12/10/Redis-Part-1/index.html +++ b/2019/12/10/Redis-Part-1/index.html @@ -479,20 +479,20 @@ @@ -517,7 +517,7 @@ diff --git a/2019/12/18/1Q84读后感/index.html b/2019/12/18/1Q84读后感/index.html index 2a395e3066..ee96438e96 100644 --- a/2019/12/18/1Q84读后感/index.html +++ b/2019/12/18/1Q84读后感/index.html @@ -260,14 +260,14 @@ - , - , @@ -455,20 +455,20 @@ @@ -493,7 +493,7 @@ diff --git a/2019/12/21/聊聊Java中的单例模式/index.html b/2019/12/21/聊聊Java中的单例模式/index.html index 24ef0b7196..c1e7b3703b 100644 --- a/2019/12/21/聊聊Java中的单例模式/index.html +++ b/2019/12/21/聊聊Java中的单例模式/index.html @@ -468,20 +468,20 @@ @@ -506,7 +506,7 @@ diff --git a/2019/12/26/redis数据结构介绍/index.html b/2019/12/26/redis数据结构介绍/index.html index 7084e24e63..fc6abea262 100644 --- a/2019/12/26/redis数据结构介绍/index.html +++ b/2019/12/26/redis数据结构介绍/index.html @@ -283,14 +283,14 @@ , - , - , @@ -352,10 +352,10 @@ @@ -496,20 +496,20 @@ @@ -534,7 +534,7 @@ diff --git a/2020/01/10/redis数据结构介绍三/index.html b/2020/01/10/redis数据结构介绍三/index.html index d1667f4310..f5878c2f0e 100644 --- a/2020/01/10/redis数据结构介绍三/index.html +++ b/2020/01/10/redis数据结构介绍三/index.html @@ -280,14 +280,14 @@ , - , - , @@ -344,16 +344,16 @@ @@ -496,20 +496,20 @@ @@ -534,7 +534,7 @@ diff --git a/2020/01/19/redis数据结构介绍四/index.html b/2020/01/19/redis数据结构介绍四/index.html index c128087dd7..cfa7effb3a 100644 --- a/2020/01/19/redis数据结构介绍四/index.html +++ b/2020/01/19/redis数据结构介绍四/index.html @@ -271,14 +271,14 @@ , - , - , @@ -341,15 +341,15 @@ - +
@@ -491,20 +491,20 @@ @@ -529,7 +529,7 @@ diff --git a/2020/01/20/redis数据结构介绍五/index.html b/2020/01/20/redis数据结构介绍五/index.html index 1dd4cd55f7..728a10de44 100644 --- a/2020/01/20/redis数据结构介绍五/index.html +++ b/2020/01/20/redis数据结构介绍五/index.html @@ -271,14 +271,14 @@ , - , - , @@ -339,15 +339,15 @@ - +
@@ -489,20 +489,20 @@ @@ -527,7 +527,7 @@ diff --git a/2020/01/22/redis数据结构介绍六/index.html b/2020/01/22/redis数据结构介绍六/index.html index 179c9236c1..edf531f8ec 100644 --- a/2020/01/22/redis数据结构介绍六/index.html +++ b/2020/01/22/redis数据结构介绍六/index.html @@ -278,14 +278,14 @@ , - , - , @@ -361,13 +361,13 @@ @@ -511,20 +511,20 @@ @@ -549,7 +549,7 @@ diff --git a/2020/02/01/2019年终总结/index.html b/2020/02/01/2019年终总结/index.html index 941fcdd792..51ee5250e3 100644 --- a/2020/02/01/2019年终总结/index.html +++ b/2020/02/01/2019年终总结/index.html @@ -467,20 +467,20 @@ @@ -505,7 +505,7 @@ diff --git a/2020/02/09/G1收集器概述/index.html b/2020/02/09/G1收集器概述/index.html index dae83c099b..024f103c7a 100644 --- a/2020/02/09/G1收集器概述/index.html +++ b/2020/02/09/G1收集器概述/index.html @@ -481,20 +481,20 @@ @@ -519,7 +519,7 @@ diff --git a/2020/02/16/Maven实用小技巧/index.html b/2020/02/16/Maven实用小技巧/index.html index f55f5cc0c0..5547a21b25 100644 --- a/2020/02/16/Maven实用小技巧/index.html +++ b/2020/02/16/Maven实用小技巧/index.html @@ -473,20 +473,20 @@ @@ -511,7 +511,7 @@ diff --git a/2020/02/22/gogs使用webhook部署react单页应用/index.html b/2020/02/22/gogs使用webhook部署react单页应用/index.html index 0c112122f6..face706676 100644 --- a/2020/02/22/gogs使用webhook部署react单页应用/index.html +++ b/2020/02/22/gogs使用webhook部署react单页应用/index.html @@ -461,20 +461,20 @@ @@ -499,7 +499,7 @@ diff --git a/2020/03/01/寄生虫观后感/index.html b/2020/03/01/寄生虫观后感/index.html index b8555d1485..ffbd67d7c5 100644 --- a/2020/03/01/寄生虫观后感/index.html +++ b/2020/03/01/寄生虫观后感/index.html @@ -458,20 +458,20 @@ @@ -496,7 +496,7 @@ diff --git a/2020/03/08/docker比一般多一点的初学者介绍/index.html b/2020/03/08/docker比一般多一点的初学者介绍/index.html index 086b73e10e..011db40ef0 100644 --- a/2020/03/08/docker比一般多一点的初学者介绍/index.html +++ b/2020/03/08/docker比一般多一点的初学者介绍/index.html @@ -363,6 +363,9 @@ +
@@ -505,20 +508,20 @@ @@ -543,7 +546,7 @@ diff --git a/2020/03/15/docker比一般多一点的初学者介绍二/index.html b/2020/03/15/docker比一般多一点的初学者介绍二/index.html index 06c0188002..12e87d1590 100644 --- a/2020/03/15/docker比一般多一点的初学者介绍二/index.html +++ b/2020/03/15/docker比一般多一点的初学者介绍二/index.html @@ -337,6 +337,9 @@ +
@@ -479,20 +482,20 @@ @@ -517,7 +520,7 @@ diff --git a/2020/03/21/docker比一般多一点的初学者介绍三/index.html b/2020/03/21/docker比一般多一点的初学者介绍三/index.html index 6a30dee62f..8dfe412dcb 100644 --- a/2020/03/21/docker比一般多一点的初学者介绍三/index.html +++ b/2020/03/21/docker比一般多一点的初学者介绍三/index.html @@ -339,6 +339,9 @@ + -
+
+
@@ -478,20 +484,20 @@ @@ -516,7 +522,7 @@ diff --git a/2020/03/29/echo命令的一个小技巧/index.html b/2020/03/29/echo命令的一个小技巧/index.html new file mode 100644 index 0000000000..55914ebbdd --- /dev/null +++ b/2020/03/29/echo命令的一个小技巧/index.html @@ -0,0 +1,681 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + docker使用中发现的echo命令的一个小技巧及其他 | Nicksxs's Blog + + + + + + + + + + + + + + + + +
+
+ +
+
+
+ + +

What hurts more, the pain of hard work or the pain of regret?

+
+ + +
+ + + +
+
+ + +
+ + 0% +
+ + + + +
+
+
+ + +
+ + +
+ + + +
+ + + + + +
+

+ docker使用中发现的echo命令的一个小技巧及其他 +

+ + +
+ + + + +
+ + +

最近做 docker 系列,会经常进到 docker 内部,如上一篇介绍的,这些镜像一般都有用 ubuntu 或者alpine 这样的 Linux 系统作为底包,如果构建镜像的时候没有替换源的话,因为你懂的原因,在内部想编辑下东西要安装 vim 就会很慢很慢,thousand years later~
而且如果在容器内部想改源配置的话也要编辑器,就陷入了一个鸡生蛋,跟蛋生鸡的问题中,对于 linux 大神来说应该有一万种方法解决这个问题,对于我这个渣渣来说可能只想到了这个土方法,先 cp backup 一下 sources.list, 再 echo “xxx” > sources.list, 这里就碰到了一个问题,这个 sources.list 一般不止一行,直接 echo 的话就解析不了了,不过 echo 可以支持”\n”转义,就是加-e
看一下解释和示例

还有一点也是在这个时候要安装 vim 之类的,得知道是什么镜像底包,如果是用 uname 指令,其实看到的是宿主机的系统,得用cat /etc/issue

这里稍稍记一下

+ +
+ + + + + + + + +
+
请我喝杯咖啡
+ + +
+ + + +
+ +
+ + + + +
+ + + + +
+ + +
+ + +
+
+ +
+
+ + + + +
+ + + + + + + + +
+
+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/404.html b/404.html index 1efc3f3513..41f7c87fe4 100644 --- a/404.html +++ b/404.html @@ -340,20 +340,20 @@ @@ -378,7 +378,7 @@ diff --git a/404/index.html b/404/index.html index 5e0f5c509a..c7324b125f 100644 --- a/404/index.html +++ b/404/index.html @@ -327,20 +327,20 @@ @@ -365,7 +365,7 @@ diff --git a/archives/2014/12/index.html b/archives/2014/12/index.html index 29c20d3552..5adeace2ba 100644 --- a/archives/2014/12/index.html +++ b/archives/2014/12/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -368,20 +368,20 @@ @@ -406,7 +406,7 @@ diff --git a/archives/2014/index.html b/archives/2014/index.html index ed3c6972a3..8bcf53c9a8 100644 --- a/archives/2014/index.html +++ b/archives/2014/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -368,20 +368,20 @@ @@ -406,7 +406,7 @@ diff --git a/archives/2015/01/index.html b/archives/2015/01/index.html index a41039dc31..1c8faaa18e 100644 --- a/archives/2015/01/index.html +++ b/archives/2015/01/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -368,20 +368,20 @@ @@ -406,7 +406,7 @@ diff --git a/archives/2015/03/index.html b/archives/2015/03/index.html index e28e16d728..1ce38bac53 100644 --- a/archives/2015/03/index.html +++ b/archives/2015/03/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -368,20 +368,20 @@ @@ -406,7 +406,7 @@ diff --git a/archives/2015/04/index.html b/archives/2015/04/index.html index 0306354405..8b76541e69 100644 --- a/archives/2015/04/index.html +++ b/archives/2015/04/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -348,20 +348,20 @@ @@ -386,7 +386,7 @@ diff --git a/archives/2015/06/index.html b/archives/2015/06/index.html index 482aa83168..61aff9671b 100644 --- a/archives/2015/06/index.html +++ b/archives/2015/06/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/archives/2015/index.html b/archives/2015/index.html index 64b949f0bd..b3dbc8c51d 100644 --- a/archives/2015/index.html +++ b/archives/2015/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -488,20 +488,20 @@ @@ -526,7 +526,7 @@ diff --git a/archives/2016/07/index.html b/archives/2016/07/index.html index a3740206b8..554a107065 100644 --- a/archives/2016/07/index.html +++ b/archives/2016/07/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/archives/2016/08/index.html b/archives/2016/08/index.html index eb83c920af..979da026b4 100644 --- a/archives/2016/08/index.html +++ b/archives/2016/08/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -348,20 +348,20 @@ @@ -386,7 +386,7 @@ diff --git a/archives/2016/09/index.html b/archives/2016/09/index.html index cad8d1cd41..34d074f52d 100644 --- a/archives/2016/09/index.html +++ b/archives/2016/09/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/archives/2016/10/index.html b/archives/2016/10/index.html index cdde117da4..7fa62e6955 100644 --- a/archives/2016/10/index.html +++ b/archives/2016/10/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -348,20 +348,20 @@ @@ -386,7 +386,7 @@ diff --git a/archives/2016/11/index.html b/archives/2016/11/index.html index b1536a063a..30feda149a 100644 --- a/archives/2016/11/index.html +++ b/archives/2016/11/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/archives/2016/index.html b/archives/2016/index.html index 02230371f6..041cbb0313 100644 --- a/archives/2016/index.html +++ b/archives/2016/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -448,20 +448,20 @@ @@ -486,7 +486,7 @@ diff --git a/archives/2017/03/index.html b/archives/2017/03/index.html index 39cfee5f43..039c746e31 100644 --- a/archives/2017/03/index.html +++ b/archives/2017/03/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/archives/2017/04/index.html b/archives/2017/04/index.html index 21c43475f5..9e75a46023 100644 --- a/archives/2017/04/index.html +++ b/archives/2017/04/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/archives/2017/05/index.html b/archives/2017/05/index.html index 78332f54d7..7cce610578 100644 --- a/archives/2017/05/index.html +++ b/archives/2017/05/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/archives/2017/index.html b/archives/2017/index.html index 6c1ac1b37f..92ae4f6235 100644 --- a/archives/2017/index.html +++ b/archives/2017/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -368,20 +368,20 @@ @@ -406,7 +406,7 @@ diff --git a/archives/2019/06/index.html b/archives/2019/06/index.html index af8020ba63..9b6a7f4750 100644 --- a/archives/2019/06/index.html +++ b/archives/2019/06/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/archives/2019/09/index.html b/archives/2019/09/index.html index 988d35fa18..915c91b823 100644 --- a/archives/2019/09/index.html +++ b/archives/2019/09/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/archives/2019/12/index.html b/archives/2019/12/index.html index 84f7efd4f8..3d71888006 100644 --- a/archives/2019/12/index.html +++ b/archives/2019/12/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -408,20 +408,20 @@ @@ -446,7 +446,7 @@ diff --git a/archives/2019/index.html b/archives/2019/index.html index 6066ded38a..22a0aab504 100644 --- a/archives/2019/index.html +++ b/archives/2019/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -448,20 +448,20 @@ @@ -486,7 +486,7 @@ diff --git a/archives/2020/01/index.html b/archives/2020/01/index.html index 4cf268799b..504400d03c 100644 --- a/archives/2020/01/index.html +++ b/archives/2020/01/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -408,20 +408,20 @@ @@ -446,7 +446,7 @@ diff --git a/archives/2020/02/index.html b/archives/2020/02/index.html index 7b86c5af68..c5c2ce18fb 100644 --- a/archives/2020/02/index.html +++ b/archives/2020/02/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -388,20 +388,20 @@ @@ -426,7 +426,7 @@ diff --git a/archives/2020/03/index.html b/archives/2020/03/index.html index 3b762ac581..e1b1617829 100644 --- a/archives/2020/03/index.html +++ b/archives/2020/03/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -234,6 +234,26 @@

2020

+ +
@@ -388,20 +408,20 @@ @@ -426,7 +446,7 @@ diff --git a/archives/2020/index.html b/archives/2020/index.html index f46f92be69..94dea1a4b1 100644 --- a/archives/2020/index.html +++ b/archives/2020/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -234,6 +234,26 @@

2020

+ +
@@ -414,26 +434,6 @@
- -
@@ -511,20 +511,20 @@ @@ -549,7 +549,7 @@ diff --git a/archives/2020/page/2/index.html b/archives/2020/page/2/index.html index 907485ad08..91aa8bb8e3 100644 --- a/archives/2020/page/2/index.html +++ b/archives/2020/page/2/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -234,6 +234,26 @@

2020

+ +
@@ -371,20 +391,20 @@ @@ -409,7 +429,7 @@ diff --git a/archives/index.html b/archives/index.html index a3efa30086..f079385133 100644 --- a/archives/index.html +++ b/archives/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -234,6 +234,26 @@

2020

+ +
@@ -414,26 +434,6 @@
- -
@@ -511,20 +511,20 @@ @@ -549,7 +549,7 @@ diff --git a/archives/page/2/index.html b/archives/page/2/index.html index c5a9004e59..6f81c26087 100644 --- a/archives/page/2/index.html +++ b/archives/page/2/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -234,6 +234,26 @@

2020

+ +
@@ -417,26 +437,6 @@
- -
@@ -514,20 +514,20 @@ @@ -552,7 +552,7 @@ diff --git a/archives/page/3/index.html b/archives/page/3/index.html index 4416456e89..feafe7c251 100644 --- a/archives/page/3/index.html +++ b/archives/page/3/index.html @@ -226,10 +226,33 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
+
+

2019

+
+ +

2017

@@ -417,26 +440,6 @@ - -
@@ -514,20 +517,20 @@ @@ -552,7 +555,7 @@ diff --git a/archives/page/4/index.html b/archives/page/4/index.html index d5a37e0131..917225d3e5 100644 --- a/archives/page/4/index.html +++ b/archives/page/4/index.html @@ -226,10 +226,33 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
+
+

2016

+
+ +

2015

@@ -413,29 +436,6 @@ -
-

2014

-
- -
@@ -514,20 +514,20 @@ @@ -552,7 +552,7 @@ diff --git a/archives/page/5/index.html b/archives/page/5/index.html index f83ba83744..9175e842ce 100644 --- a/archives/page/5/index.html +++ b/archives/page/5/index.html @@ -226,7 +226,7 @@
- OK! 42 posts in total. Keep on posting. + OK! 43 posts in total. Keep on posting.
@@ -234,6 +234,26 @@

2014

+ +
@@ -351,20 +371,20 @@ @@ -389,7 +409,7 @@ diff --git a/atom.xml b/atom.xml index 1c78b73c8f..c3d60cf402 100644 --- a/atom.xml +++ b/atom.xml @@ -6,7 +6,7 @@ - 2020-03-21T08:19:01.533Z + 2020-03-29T13:48:50.198Z https://nicksxs.me/ @@ -16,6 +16,49 @@ Hexo + + docker使用中发现的echo命令的一个小技巧及其他 + + https://nicksxs.me/2020/03/29/echo%E5%91%BD%E4%BB%A4%E7%9A%84%E4%B8%80%E4%B8%AA%E5%B0%8F%E6%8A%80%E5%B7%A7/ + 2020-03-29T13:48:50.000Z + 2020-03-29T13:48:50.198Z + + + + + + + + <p>最近做 docker 系列,会经常进到 docker 内部,如上一篇介绍的,这些镜像一般都有用 ubuntu 或者alpine 这样的 Linux 系统作为底包,如果构建镜像的时候没有替换源的话,因为你懂的原因,在内部想编辑下东西要安装 vim + + + + + + + + + + + + + + + + + + + + + + + + + + + + + docker比一般多一点的初学者介绍三 @@ -315,10 +358,10 @@ - - + + @@ -354,10 +397,10 @@ - - + + @@ -393,10 +436,10 @@ - - + + @@ -433,10 +476,10 @@ - - + + @@ -472,10 +515,10 @@ - - + + @@ -511,10 +554,10 @@ - - + + @@ -583,10 +626,10 @@ - - + + @@ -701,34 +744,4 @@ - - openresty - - https://nicksxs.me/2019/06/18/openresty/ - 2019-06-18T11:03:05.000Z - 2020-01-12T13:08:27.010Z - - - - - - - - <p>目前公司要对一些新的产品功能做灰度测试,因为在后端业务代码层面添加判断比较麻烦,所以想在nginx上做点手脚,就想到了openresty<br>前后也踩了不少坑,这边先写一点</p> -<p>首先是日志<br><code>error_log logs/error.log - - - - - - - - - - - - - - - diff --git a/baidu_verify_Gl8jtoDV4z.html b/baidu_verify_Gl8jtoDV4z.html index 0e08e85e2b..e90a8430a4 100644 --- a/baidu_verify_Gl8jtoDV4z.html +++ b/baidu_verify_Gl8jtoDV4z.html @@ -329,20 +329,20 @@ @@ -367,7 +367,7 @@ diff --git a/baidusitemap.xml b/baidusitemap.xml index 05172a924c..b34dfef7f7 100644 --- a/baidusitemap.xml +++ b/baidusitemap.xml @@ -1,6 +1,9 @@ + https://nicksxs.me/2020/03/29/echo%E5%91%BD%E4%BB%A4%E7%9A%84%E4%B8%80%E4%B8%AA%E5%B0%8F%E6%8A%80%E5%B7%A7/ + 2020-03-29 + https://nicksxs.me/2020/03/21/docker%E6%AF%94%E4%B8%80%E8%88%AC%E5%A4%9A%E4%B8%80%E7%82%B9%E7%9A%84%E5%88%9D%E5%AD%A6%E8%80%85%E4%BB%8B%E7%BB%8D%E4%B8%89/ 2020-03-21 @@ -34,10 +37,10 @@ https://nicksxs.me/2020/01/19/redis%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%BB%8B%E7%BB%8D%E5%9B%9B/ 2020-01-18 - https://nicksxs.me/2019/12/10/Redis-Part-1/ + https://nicksxs.me/2015/01/14/Two-Sum/ 2020-01-12 - https://nicksxs.me/2015/01/14/Two-Sum/ + https://nicksxs.me/2019/12/10/Redis-Part-1/ 2020-01-12 https://nicksxs.me/2016/11/10/php-abstract-class-and-interface/ @@ -61,10 +64,10 @@ https://nicksxs.me/2016/08/14/docker-mysql-cluster/ 2020-01-12 - https://nicksxs.me/2017/05/09/ambari-summary/ + https://nicksxs.me/2019/06/18/openresty/ 2020-01-12 - https://nicksxs.me/2019/06/18/openresty/ + https://nicksxs.me/2017/05/09/ambari-summary/ 2020-01-12 https://nicksxs.me/2020/01/04/redis%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%BB%8B%E7%BB%8D%E4%BA%8C/ @@ -82,10 +85,10 @@ https://nicksxs.me/2020/01/10/redis%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84%E4%BB%8B%E7%BB%8D%E4%B8%89/ 2020-01-12 - https://nicksxs.me/2017/03/28/spark-little-tips/ + https://nicksxs.me/2014/12/23/my-new-post/ 2020-01-12 - https://nicksxs.me/2014/12/23/my-new-post/ + https://nicksxs.me/2017/03/28/spark-little-tips/ 2020-01-12 https://nicksxs.me/2014/12/30/Clone-Graph-Part-I/ @@ -94,10 +97,10 @@ https://nicksxs.me/2016/07/13/swoole-websocket-test/ 2020-01-12 - https://nicksxs.me/2015/06/22/invert-binary-tree/ + https://nicksxs.me/2016/10/12/summary-ranges-228/ 2020-01-12 - https://nicksxs.me/2016/10/12/summary-ranges-228/ + https://nicksxs.me/2015/06/22/invert-binary-tree/ 2020-01-12 https://nicksxs.me/2017/04/25/rabbitmq-tips/ diff --git a/categories/C/Redis/index.html b/categories/C/Redis/index.html index ea4869edff..47f0812255 100644 --- a/categories/C/Redis/index.html +++ b/categories/C/Redis/index.html @@ -451,20 +451,20 @@ @@ -489,7 +489,7 @@ diff --git a/categories/C/index.html b/categories/C/index.html index c2248f433b..f81b21b0d4 100644 --- a/categories/C/index.html +++ b/categories/C/index.html @@ -451,20 +451,20 @@ @@ -489,7 +489,7 @@ diff --git a/categories/Java/Design-Patterns/index.html b/categories/Java/Design-Patterns/index.html index 6d042f1255..fbe52aee66 100644 --- a/categories/Java/Design-Patterns/index.html +++ b/categories/Java/Design-Patterns/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/categories/Java/GC/index.html b/categories/Java/GC/index.html index 7881575c74..a5a1a6ad25 100644 --- a/categories/Java/GC/index.html +++ b/categories/Java/GC/index.html @@ -351,20 +351,20 @@ @@ -389,7 +389,7 @@ diff --git a/categories/Java/JVM/index.html b/categories/Java/JVM/index.html index c677211820..2d614e3189 100644 --- a/categories/Java/JVM/index.html +++ b/categories/Java/JVM/index.html @@ -351,20 +351,20 @@ @@ -389,7 +389,7 @@ diff --git a/categories/Java/Maven/index.html b/categories/Java/Maven/index.html index 8bacc8483a..f82d7c7610 100644 --- a/categories/Java/Maven/index.html +++ b/categories/Java/Maven/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/categories/Java/Singleton/index.html b/categories/Java/Singleton/index.html index a545338261..8cb752d7d4 100644 --- a/categories/Java/Singleton/index.html +++ b/categories/Java/Singleton/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/categories/Java/index.html b/categories/Java/index.html index ea725bb8f9..3ac9511eda 100644 --- a/categories/Java/index.html +++ b/categories/Java/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/categories/Linux/index.html b/categories/Linux/index.html new file mode 100644 index 0000000000..8243602034 --- /dev/null +++ b/categories/Linux/index.html @@ -0,0 +1,512 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Category: Linux | Nicksxs's Blog + + + + + + + + + + + + + + + + +
+
+ +
+
+
+ + +

What hurts more, the pain of hard work or the pain of regret?

+
+ + +
+ + + +
+
+ + +
+ + 0% +
+ + + + +
+
+
+ + +
+ + + + + +
+
+
+

Linux + Category +

+
+ + +
+

2020

+
+ + + +
+
+ + + + + + + + +
+ + + + +
+ + + + + + + + +
+
+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/categories/Linux/命令/echo/index.html b/categories/Linux/命令/echo/index.html new file mode 100644 index 0000000000..18fea615b9 --- /dev/null +++ b/categories/Linux/命令/echo/index.html @@ -0,0 +1,512 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Category: echo | Nicksxs's Blog + + + + + + + + + + + + + + + + +
+
+ +
+
+
+ + +

What hurts more, the pain of hard work or the pain of regret?

+
+ + +
+ + + +
+
+ + +
+ + 0% +
+ + + + +
+
+
+ + +
+ + + + + +
+
+
+

echo + Category +

+
+ + +
+

2020

+
+ + + +
+
+ + + + + + + + +
+ + + + +
+ + + + + + + + +
+
+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/categories/Linux/命令/index.html b/categories/Linux/命令/index.html new file mode 100644 index 0000000000..8bb4b9b8f2 --- /dev/null +++ b/categories/Linux/命令/index.html @@ -0,0 +1,512 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Category: 命令 | Nicksxs's Blog + + + + + + + + + + + + + + + + +
+
+ +
+
+
+ + +

What hurts more, the pain of hard work or the pain of regret?

+
+ + +
+ + + +
+
+ + +
+ + 0% +
+ + + + +
+
+
+ + +
+ + + + + +
+
+
+

命令 + Category +

+
+ + +
+

2020

+
+ + + +
+
+ + + + + + + + +
+ + + + +
+ + + + + + + + +
+
+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/categories/Redis/Distributed-Lock/index.html b/categories/Redis/Distributed-Lock/index.html index e315dc8728..9ed637b331 100644 --- a/categories/Redis/Distributed-Lock/index.html +++ b/categories/Redis/Distributed-Lock/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/categories/Redis/index.html b/categories/Redis/index.html index 7af306cd15..149fa8762c 100644 --- a/categories/Redis/index.html +++ b/categories/Redis/index.html @@ -451,20 +451,20 @@ @@ -489,7 +489,7 @@ diff --git a/categories/Redis/数据结构/index.html b/categories/Redis/数据结构/index.html index 4eace31751..7798d5516b 100644 --- a/categories/Redis/数据结构/index.html +++ b/categories/Redis/数据结构/index.html @@ -431,20 +431,20 @@ @@ -469,7 +469,7 @@ diff --git a/categories/Redis/源码/index.html b/categories/Redis/源码/index.html index 9efc13d50d..f552a00cca 100644 --- a/categories/Redis/源码/index.html +++ b/categories/Redis/源码/index.html @@ -431,20 +431,20 @@ @@ -469,7 +469,7 @@ diff --git a/categories/data-analysis/index.html b/categories/data-analysis/index.html index 5f5ad2e750..0cee90fccd 100644 --- a/categories/data-analysis/index.html +++ b/categories/data-analysis/index.html @@ -348,20 +348,20 @@ @@ -386,7 +386,7 @@ diff --git a/categories/docker/index.html b/categories/docker/index.html index 3cc4313c5d..425bac02f7 100644 --- a/categories/docker/index.html +++ b/categories/docker/index.html @@ -55,7 +55,7 @@ - + @@ -66,7 +66,7 @@ - + - Category: Docker | Nicksxs's Blog + Category: docker | Nicksxs's Blog + + + + + + +">
+ + +
+ + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Category: 发行版本 | Nicksxs's Blog + + + + + + + + + + + + + + + + +
+
+ +
+
+
+ + +

What hurts more, the pain of hard work or the pain of regret?

+
+ + +
+ + + +
+
+ + +
+ + 0% +
+ + + + +
+
+
+ + +
+ + + + + +
+
+
+

发行版本 + Category +

+
+ + +
+

2020

+
+ + + +
+
+ + + + + + + + +
+ + + + +
+ + + + + + + + +
+
+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/categories/index.html b/categories/index.html index e82f19bf16..113abda625 100644 --- a/categories/index.html +++ b/categories/index.html @@ -247,10 +247,10 @@
@@ -330,20 +330,20 @@ @@ -368,7 +368,7 @@ diff --git a/categories/leetcode/index.html b/categories/leetcode/index.html index 48826dffe8..5a6e757eaa 100644 --- a/categories/leetcode/index.html +++ b/categories/leetcode/index.html @@ -514,20 +514,20 @@ @@ -552,7 +552,7 @@ diff --git a/categories/leetcode/page/2/index.html b/categories/leetcode/page/2/index.html index 0feeecd2a5..e708f829c8 100644 --- a/categories/leetcode/page/2/index.html +++ b/categories/leetcode/page/2/index.html @@ -374,20 +374,20 @@ @@ -412,7 +412,7 @@ diff --git a/categories/nginx/index.html b/categories/nginx/index.html index 1433ffcdaa..b5705a9f6f 100644 --- a/categories/nginx/index.html +++ b/categories/nginx/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/categories/php/index.html b/categories/php/index.html index f0234d84f3..a4f962c130 100644 --- a/categories/php/index.html +++ b/categories/php/index.html @@ -371,20 +371,20 @@ @@ -409,7 +409,7 @@ diff --git a/categories/持续集成/index.html b/categories/持续集成/index.html index 08da480a1c..442406542b 100644 --- a/categories/持续集成/index.html +++ b/categories/持续集成/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/categories/生活/index.html b/categories/生活/index.html index 993cb48ae0..fafc17e578 100644 --- a/categories/生活/index.html +++ b/categories/生活/index.html @@ -371,20 +371,20 @@ @@ -409,7 +409,7 @@ diff --git a/categories/生活/年终总结/2019/index.html b/categories/生活/年终总结/2019/index.html index a6e6089326..ebaed53b08 100644 --- a/categories/生活/年终总结/2019/index.html +++ b/categories/生活/年终总结/2019/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/categories/生活/年终总结/index.html b/categories/生活/年终总结/index.html index 4921986215..d9fb02cf5d 100644 --- a/categories/生活/年终总结/index.html +++ b/categories/生活/年终总结/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/categories/生活/影评/2020/index.html b/categories/生活/影评/2020/index.html index c52be6c27c..a5d16e3bb8 100644 --- a/categories/生活/影评/2020/index.html +++ b/categories/生活/影评/2020/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/categories/生活/影评/index.html b/categories/生活/影评/index.html index f58f5033dd..bf2e392db4 100644 --- a/categories/生活/影评/index.html +++ b/categories/生活/影评/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/categories/读后感/index.html b/categories/读后感/index.html index 88cdf0b241..dcc91a0a14 100644 --- a/categories/读后感/index.html +++ b/categories/读后感/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/categories/读后感/村上春树/index.html b/categories/读后感/村上春树/index.html index 94a7ac0527..18ccadb5b1 100644 --- a/categories/读后感/村上春树/index.html +++ b/categories/读后感/村上春树/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/css/main.css b/css/main.css index 13385a357e..4ee74c90c2 100644 --- a/css/main.css +++ b/css/main.css @@ -1259,7 +1259,7 @@ pre .javascript .function { } .links-of-author a::before, .links-of-author span.exturl::before { - background: #dbe7fa; + background: #d6aaff; border-radius: 50%; content: ' '; display: inline-block; diff --git a/index.html b/index.html index a7b7ae75d4..4a3018ca39 100644 --- a/index.html +++ b/index.html @@ -223,6 +223,115 @@ +
+ + + + + +
+

+ + +

+ + +
+ + + + +
+ + +

最近做 docker 系列,会经常进到 docker 内部,如上一篇介绍的,这些镜像一般都有用 ubuntu 或者alpine 这样的 Linux 系统作为底包,如果构建镜像的时候没有替换源的话,因为你懂的原因,在内部想编辑下东西要安装 vim 就会很慢很慢,thousand years later~
而且如果在容器内部想改源配置的话也要编辑器,就陷入了一个鸡生蛋,跟蛋生鸡的问题中,对于 linux 大神来说应该有一万种方法解决这个问题,对于我这个渣渣来说可能只想到了这个土方法,先 cp backup 一下 sources.list, 再 echo “xxx” > sources.list, 这里就碰到了一个问题,这个 sources.list 一般不止一行,直接 echo 的话就解析不了了,不过 echo 可以支持”\n”转义,就是加-e
看一下解释和示例

还有一点也是在这个时候要安装 vim 之类的,得知道是什么镜像底包,如果是用 uname 指令,其实看到的是宿主机的系统,得用cat /etc/issue

这里稍稍记一下

+ + +
+ + + + + + +
+
+
+
+ + + + + + +
@@ -1185,14 +1294,14 @@ , - , - , @@ -1269,124 +1378,6 @@ - - - -
- - - - - -
-

- - -

- - -
- - - - -
- - -

前面说了这么些数据结构,其实大家对于 redis 最初的印象应该就是个 key-value 的缓存,类似于 memcache,redis 其实也是个 key-value,key 还是一样的字符串,或者说就是用 redis 自己的动态字符串实现,但是 value 其实就是前面说的那些数据结构,差不多快说完了,还有个 quicklist 后面还有一篇,这里先介绍下 redis 对于这些不同类型的 value 是怎么实现的,首先看下 redisObject 的源码头文件

-
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
/* The actual Redis Object */
#define OBJ_STRING 0 /* String object. */
#define OBJ_LIST 1 /* List object. */
#define OBJ_SET 2 /* Set object. */
#define OBJ_ZSET 3 /* Sorted set object. */
#define OBJ_HASH 4 /* Hash object. */
/*
* Objects encoding. Some kind of objects like Strings and Hashes can be
* internally represented in multiple ways. The 'encoding' field of the object
* is set to one of this fields for this object. */
#define OBJ_ENCODING_RAW 0 /* Raw representation */
#define OBJ_ENCODING_INT 1 /* Encoded as integer */
#define OBJ_ENCODING_HT 2 /* Encoded as hash table */
#define OBJ_ENCODING_ZIPMAP 3 /* Encoded as zipmap */
#define OBJ_ENCODING_LINKEDLIST 4 /* No longer used: old list encoding. */
#define OBJ_ENCODING_ZIPLIST 5 /* Encoded as ziplist */
#define OBJ_ENCODING_INTSET 6 /* Encoded as intset */
#define OBJ_ENCODING_SKIPLIST 7 /* Encoded as skiplist */
#define OBJ_ENCODING_EMBSTR 8 /* Embedded sds string encoding */
#define OBJ_ENCODING_QUICKLIST 9 /* Encoded as linked list of ziplists */
#define OBJ_ENCODING_STREAM 10 /* Encoded as a radix tree of listpacks */

#define LRU_BITS 24
#define LRU_CLOCK_MAX ((1<<LRU_BITS)-1) /* Max value of obj->lru */
#define LRU_CLOCK_RESOLUTION 1000 /* LRU clock resolution in ms */

#define OBJ_SHARED_REFCOUNT INT_MAX
typedef struct redisObject {
unsigned type:4;
unsigned encoding:4;
unsigned lru:LRU_BITS; /* LRU time (relative to global lru_clock) or
* LFU data (least significant 8 bits frequency
* and most significant 16 bits access time). */
int refcount;
void *ptr;
} robj;
-

主体结构就是这个 redisObject,

-
    -
  • type: 字段表示对象的类型,它对应的就是 redis 的对外暴露的,或者说用户可以使用的五种类型,OBJ_STRING, OBJ_LIST, OBJ_SET, OBJ_ZSET, OBJ_HASH
  • -
  • encoding: 字段表示这个对象在 redis 内部的编码方式,由OBJ_ENCODING_开头的 11 种
  • -
  • lru: 做LRU替换算法用,占24个bit
  • -
  • refcount: 引用计数。它允许robj对象在某些情况下被共享。
  • -
  • ptr: 指向底层实现数据结构的指针
    当 type 是 OBJ_STRING 时,表示类型是个 string,它的编码方式 encoding 可能有 OBJ_ENCODING_RAW,OBJ_ENCODING_INT,OBJ_ENCODING_EMBSTR 三种
    当 type 是 OBJ_LIST 时,表示类型是 list,它的编码方式 encoding 是 OBJ_ENCODING_QUICKLIST,对于早一些的版本,2.2这种可能还会使用 OBJ_ENCODING_ZIPLIST,OBJ_ENCODING_LINKEDLIST
    当 type 是 OBJ_SET 时,是个集合,但是得看具体元素的类型,有可能使用整数集合,OBJ_ENCODING_INTSET, 如果元素不全是整型或者数量超过一定限制,那么编码就是 OBJ_ENCODING_HT hash table 了
    当 type 是 OBJ_ZSET 时,是个有序集合,它底层有可能使用的是 OBJ_ENCODING_ZIPLIST 或者 OBJ_ENCODING_SKIPLIST
    当 type 是 OBJ_HASH 时,一开始也是 OBJ_ENCODING_ZIPLIST,然后当数据量大于 hash_max_ziplist_entries 时会转成 OBJ_ENCODING_HT
  • -
- - -
- - - - - - -
-
-
-
- - - -
@@ -1459,20 +1450,20 @@ @@ -1497,7 +1488,7 @@ diff --git a/lib/pace/README.html b/lib/pace/README.html index 455d97a5a1..d978fcc13c 100644 --- a/lib/pace/README.html +++ b/lib/pace/README.html @@ -371,20 +371,20 @@ @@ -409,7 +409,7 @@ diff --git a/page/2/index.html b/page/2/index.html index fe947b3762..5c62bc447b 100644 --- a/page/2/index.html +++ b/page/2/index.html @@ -224,7 +224,7 @@
- +
+ + + + + + + +
+ + + + + +
+

+ + +

+ + @@ -1471,20 +1466,20 @@ @@ -1509,7 +1504,7 @@ diff --git a/page/3/index.html b/page/3/index.html index 4b25d07b7e..6118202ded 100644 --- a/page/3/index.html +++ b/page/3/index.html @@ -223,6 +223,129 @@ +
+ + + + + +
+

+ + +

+ + +
+ + + + +
+ + +

目前公司要对一些新的产品功能做灰度测试,因为在后端业务代码层面添加判断比较麻烦,所以想在nginx上做点手脚,就想到了openresty
前后也踩了不少坑,这边先写一点

+

首先是日志
error_log logs/error.log debug;
需要nginx开启日志的debug才能看到日志

+

使用 lua_code_cache off即可, 另外注意只有使用 content_by_lua_file 才会生效

+
1
2
3
4
5
6
7
8
http {
lua_code_cache off;
}

location ~* /(\d+-.*)/api/orgunits/load_all(.*) {
default_type 'application/json;charset=utf-8';
content_by_lua_file /data/projects/xxx/current/lua/controller/load_data.lua;
}
+ +

使用lua给nginx请求response头添加内容可以用这个

+
1
ngx.header['response'] = 'header'
+ + +

使用总结

+

后续:

+
    +
  1. 一开始在本地环境的时候使用content_by_lua_file只关注了头,后来发到测试环境发现请求内容都没代理转发到后端服务上
    网上查了下发现content_by_lua_file是将请求的所有内容包括response都用这里面的lua脚本生成了,content这个词就表示是请求内容
    后来改成了access_by_lua_file就正常了,只是要去获取请求内容和修改响应头,并不是要完整的接管请求
  2. +
+
    +
  1. 后来又碰到了一个坑是nginx有个client_body_buffer_size的配置参数,nginx在32位和64位系统里有8K和16K两个默认值,当请求内容大于这两个值的时候,会把请求内容放到临时文件里,这个时候openresty里的ngx.req.get_post_args()就会报“failed to get post args: requesty body in temp file not supported”这个错误,将client_body_buffer_size这个参数配置调大一点就好了

    +
  2. +
  3. 还有就是lua的异常捕获,网上看一般是用pcall和xpcall来进行保护调用,因为问题主要出在cjson的decode,这里有两个解决方案,一个就是将cjson.decode使用pcall封装,

    +
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    local decode = require("cjson").decode

    function json_decode( str )
    local ok, t = pcall(decode, str)
    if not ok then
    return nil
    end

    return t
    end
    +

    这个是使用了pcall,称为保护调用,会在内部错误后返回两个参数,第一个是false,第二个是错误信息
    还有一种是使用cjson.safe包

    +
    1
    2
    3
    4
    5
    6
    7
    local json = require("cjson.safe")
    local str = [[ {"key:"value"} ]]

    local t = json.decode(str)
    if t then
    ngx.say(" --> ", type(t))
    end
    +

    cjson.safe包会在解析失败的时候返回nil

    +
  4. +
  5. 还有一个是redis链接时如果host使用的是域名的话会提示“failed to connect: no resolver defined to resolve “redis.xxxxxx.com””,这里需要使用nginx的resolver指令,
    resolver 8.8.8.8 valid=3600s;

    +
  6. +
  7. 还有一点补充下
    就是业务在使用redis的时候使用了db的特性,所以在lua访问redis的时候也需要执行db,这里lua的redis库也支持了这个特性,可以使用instance:select(config:get(‘db’))来切换db

    +
  8. +
  9. 性能优化tips
    建议是尽量少使用阶段钩子,例如content_by_lua_file,*_by_lua

    +
  10. +
  11. 发现一个不错的openresty站点
    地址

    +
  12. +
+ + +
+ + + + + + +
+
+
+
+ + + + + + +
@@ -1107,106 +1230,6 @@ - - - -
- - - - - -
-

- - -

- - -
- - - - -
- - -

玩一下swoole的websocket

WebSocket是HTML5开始提供的一种在单个TCP连接上进行全双工通讯的协议。WebSocket通信协议于2011年被IETF定为标准RFC 6455,WebSocketAPI被W3C定为标准。
,在web私信,im等应用较多。背景和优缺点可以参看wiki

-

环境准备

因为swoole官方还不支持windows,所以需要装下linux,之前都是用ubuntu,
这次就试一下centos7,还是满好看的,虽然虚拟机会默认最小安装,需要在安装
时自己选择带gnome的,当然最小安装也是可以的,只是最后需要改下防火墙。
然后是装下PHP,Nginx什么的,我是用Oneinstack,可以按需安装
给做这个的大大点个赞。

- -
- - Read more » - -
- - - -
- - - - - - -
-
-
-
- - - -
@@ -1279,20 +1302,20 @@ @@ -1317,7 +1340,7 @@ diff --git a/page/4/index.html b/page/4/index.html index 6b21590931..351eea8a01 100644 --- a/page/4/index.html +++ b/page/4/index.html @@ -223,6 +223,106 @@ +
+ + + + + +
+

+ + +

+ + +
+ + + + +
+ + +

玩一下swoole的websocket

WebSocket是HTML5开始提供的一种在单个TCP连接上进行全双工通讯的协议。WebSocket通信协议于2011年被IETF定为标准RFC 6455,WebSocketAPI被W3C定为标准。
,在web私信,im等应用较多。背景和优缺点可以参看wiki

+

环境准备

因为swoole官方还不支持windows,所以需要装下linux,之前都是用ubuntu,
这次就试一下centos7,还是满好看的,虽然虚拟机会默认最小安装,需要在安装
时自己选择带gnome的,当然最小安装也是可以的,只是最后需要改下防火墙。
然后是装下PHP,Nginx什么的,我是用Oneinstack,可以按需安装
给做这个的大大点个赞。

+ +
+ + Read more » + +
+ + + +
+ + + + + + +
+
+
+
+ + + + + + +
@@ -1123,105 +1223,6 @@ - - - -
- - - - - -
-

- - -

- - -
- - - - -
- - -

problem

1
2
3
4
5
6
Clone a graph. Input is a Node pointer. Return the Node pointer of the cloned graph.

A graph is defined below:
struct Node {
vector neighbors;
}
- -
- - Read more » - -
- - - -
- - - - - - -
-
-
-
- - - -
@@ -1294,20 +1295,20 @@ @@ -1332,7 +1333,7 @@ diff --git a/page/5/index.html b/page/5/index.html index 7339af94eb..80d6d72e48 100644 --- a/page/5/index.html +++ b/page/5/index.html @@ -223,6 +223,105 @@ +
+ + + + + +
+

+ + +

+ + +
+ + + + +
+ + +

problem

1
2
3
4
5
6
Clone a graph. Input is a Node pointer. Return the Node pointer of the cloned graph.

A graph is defined below:
struct Node {
vector neighbors;
}
+ +
+ + Read more » + +
+ + + +
+ + + + + + +
+
+
+
+ + + + + + +
@@ -479,20 +578,20 @@ @@ -517,7 +616,7 @@ diff --git a/sitemap.xml b/sitemap.xml index f0c55908f2..1fe3351d35 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1,6 +1,13 @@ + + https://nicksxs.me/2020/03/29/echo%E5%91%BD%E4%BB%A4%E7%9A%84%E4%B8%80%E4%B8%AA%E5%B0%8F%E6%8A%80%E5%B7%A7/ + + 2020-03-29T13:48:50.198Z + + + https://nicksxs.me/2020/03/21/docker%E6%AF%94%E4%B8%80%E8%88%AC%E5%A4%9A%E4%B8%80%E7%82%B9%E7%9A%84%E5%88%9D%E5%AD%A6%E8%80%85%E4%BB%8B%E7%BB%8D%E4%B8%89/ @@ -114,28 +121,28 @@ - https://nicksxs.me/2015/01/14/Two-Sum/ + https://nicksxs.me/2019/12/10/Redis-Part-1/ 2020-01-12T13:08:27.015Z - https://nicksxs.me/2019/12/10/Redis-Part-1/ + https://nicksxs.me/2015/01/14/Two-Sum/ 2020-01-12T13:08:27.015Z - https://nicksxs.me/2016/09/29/binary-watch/ + https://nicksxs.me/2016/11/10/php-abstract-class-and-interface/ 2020-01-12T13:08:27.014Z - https://nicksxs.me/2016/11/10/php-abstract-class-and-interface/ + https://nicksxs.me/2016/09/29/binary-watch/ 2020-01-12T13:08:27.014Z @@ -254,28 +261,28 @@ - https://nicksxs.me/2016/10/12/summary-ranges-228/ + https://nicksxs.me/2015/06/22/invert-binary-tree/ 2020-01-12T13:08:26.994Z - https://nicksxs.me/2015/06/22/invert-binary-tree/ + https://nicksxs.me/2016/10/12/summary-ranges-228/ 2020-01-12T13:08:26.994Z - https://nicksxs.me/2015/01/04/Path-Sum/ + https://nicksxs.me/2017/04/25/rabbitmq-tips/ 2020-01-12T13:08:26.993Z - https://nicksxs.me/2017/04/25/rabbitmq-tips/ + https://nicksxs.me/2015/01/04/Path-Sum/ 2020-01-12T13:08:26.993Z @@ -289,14 +296,14 @@ - https://nicksxs.me/2015/04/15/Leetcode-No-3/ + https://nicksxs.me/2019/09/23/AbstractQueuedSynchronizer/ 2020-01-12T13:08:26.991Z - https://nicksxs.me/2019/09/23/AbstractQueuedSynchronizer/ + https://nicksxs.me/2015/04/15/Leetcode-No-3/ 2020-01-12T13:08:26.991Z diff --git a/tags/2019/index.html b/tags/2019/index.html index 09a8725644..74eed76e88 100644 --- a/tags/2019/index.html +++ b/tags/2019/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/Design-Patterns/index.html b/tags/Design-Patterns/index.html index 2a12e4432c..e50550e688 100644 --- a/tags/Design-Patterns/index.html +++ b/tags/Design-Patterns/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/Distributed-Lock/index.html b/tags/Distributed-Lock/index.html index 44a3df7f31..c3d12d7be7 100644 --- a/tags/Distributed-Lock/index.html +++ b/tags/Distributed-Lock/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/Dockerfile/index.html b/tags/Dockerfile/index.html index 1b8bd3a764..771f841be2 100644 --- a/tags/Dockerfile/index.html +++ b/tags/Dockerfile/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/G1/index.html b/tags/G1/index.html index 65f1d0c73f..a9d37499da 100644 --- a/tags/G1/index.html +++ b/tags/G1/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/GC/index.html b/tags/GC/index.html index 6c87019d99..582c09aa12 100644 --- a/tags/GC/index.html +++ b/tags/GC/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/Garbage-First-Collector/index.html b/tags/Garbage-First-Collector/index.html index 1870809673..5e79a91048 100644 --- a/tags/Garbage-First-Collector/index.html +++ b/tags/Garbage-First-Collector/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/Gogs/index.html b/tags/Gogs/index.html index 89863f9141..45bf4de507 100644 --- a/tags/Gogs/index.html +++ b/tags/Gogs/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/JVM/index.html b/tags/JVM/index.html index 0dd1616e92..e51aa1d5b9 100644 --- a/tags/JVM/index.html +++ b/tags/JVM/index.html @@ -351,20 +351,20 @@ @@ -389,7 +389,7 @@ diff --git a/tags/Maven/index.html b/tags/Maven/index.html index 05d74e2d44..19adb649df 100644 --- a/tags/Maven/index.html +++ b/tags/Maven/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/Redis/index.html b/tags/Redis/index.html index 373e92de81..af06e116bd 100644 --- a/tags/Redis/index.html +++ b/tags/Redis/index.html @@ -431,20 +431,20 @@ @@ -469,7 +469,7 @@ diff --git a/tags/Singleton/index.html b/tags/Singleton/index.html index d441876bc6..0db7bbb22d 100644 --- a/tags/Singleton/index.html +++ b/tags/Singleton/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/Webhook/index.html b/tags/Webhook/index.html index de361cca55..c330f87846 100644 --- a/tags/Webhook/index.html +++ b/tags/Webhook/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/aqs/index.html b/tags/aqs/index.html index 2497408428..3d31c3e2a6 100644 --- a/tags/aqs/index.html +++ b/tags/aqs/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/c/index.html b/tags/c/index.html index 8ec7939502..d8bf8cb34e 100644 --- a/tags/c/index.html +++ b/tags/c/index.html @@ -514,20 +514,20 @@ @@ -552,7 +552,7 @@ diff --git a/tags/c/page/2/index.html b/tags/c/page/2/index.html index a5852e7d0e..81f5995bf5 100644 --- a/tags/c/page/2/index.html +++ b/tags/c/page/2/index.html @@ -394,20 +394,20 @@ @@ -432,7 +432,7 @@ diff --git a/tags/cgroup/index.html b/tags/cgroup/index.html index a38d2a51c1..ffdcd3e38f 100644 --- a/tags/cgroup/index.html +++ b/tags/cgroup/index.html @@ -348,20 +348,20 @@ @@ -386,7 +386,7 @@ diff --git a/tags/cluster/index.html b/tags/cluster/index.html index 1f8ad2d318..2a4eda59f9 100644 --- a/tags/cluster/index.html +++ b/tags/cluster/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/docker/index.html b/tags/docker/index.html index bc8ff10a70..82127735fc 100644 --- a/tags/docker/index.html +++ b/tags/docker/index.html @@ -55,7 +55,7 @@ - + @@ -66,7 +66,7 @@ - + - Tag: Docker | Nicksxs's Blog + Tag: docker | Nicksxs's Blog + + + + + + +dimmer">
+ + +
+ + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tag: echo | Nicksxs's Blog + + + + + + + + + + + + + + + + +
+
+ +
+
+
+ + +

What hurts more, the pain of hard work or the pain of regret?

+
+ + +
+ + + +
+
+ + +
+ + 0% +
+ + + + +
+
+
+ + +
+ + + + + +
+
+
+

echo + Tag +

+
+ + +
+

2020

+
+ + + +
+
+ + + + + + + + +
+ + + + +
+ + + + + + + + +
+
+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tags/hadoop/index.html b/tags/hadoop/index.html index 00da776440..ae1cfdf447 100644 --- a/tags/hadoop/index.html +++ b/tags/hadoop/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/im/index.html b/tags/im/index.html index 88df26deca..69164c61bd 100644 --- a/tags/im/index.html +++ b/tags/im/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/index.html b/tags/index.html index 01801a06d7..839b32ef6b 100644 --- a/tags/index.html +++ b/tags/index.html @@ -247,10 +247,10 @@
@@ -337,20 +337,20 @@ @@ -375,7 +375,7 @@ diff --git a/tags/java/index.html b/tags/java/index.html index f36f7a985d..f6bd6ae2d5 100644 --- a/tags/java/index.html +++ b/tags/java/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/leetcode/index.html b/tags/leetcode/index.html index c2f12b0cb3..016fc766ca 100644 --- a/tags/leetcode/index.html +++ b/tags/leetcode/index.html @@ -514,20 +514,20 @@ @@ -552,7 +552,7 @@ diff --git a/tags/leetcode/page/2/index.html b/tags/leetcode/page/2/index.html index 18f85a03ee..3c3e02f66c 100644 --- a/tags/leetcode/page/2/index.html +++ b/tags/leetcode/page/2/index.html @@ -374,20 +374,20 @@ @@ -412,7 +412,7 @@ diff --git a/tags/linux/index.html b/tags/linux/index.html new file mode 100644 index 0000000000..8919334baf --- /dev/null +++ b/tags/linux/index.html @@ -0,0 +1,512 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tag: linux | Nicksxs's Blog + + + + + + + + + + + + + + + + +
+
+ +
+
+
+ + +

What hurts more, the pain of hard work or the pain of regret?

+
+ + +
+ + + +
+
+ + +
+ + 0% +
+ + + + +
+
+
+ + +
+ + + + + +
+
+
+

linux + Tag +

+
+ + +
+

2020

+
+ + + +
+
+ + + + + + + + +
+ + + + +
+ + + + + + + + +
+
+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tags/mfc/index.html b/tags/mfc/index.html index 48aacc20e5..cad4ac8209 100644 --- a/tags/mfc/index.html +++ b/tags/mfc/index.html @@ -351,20 +351,20 @@ @@ -389,7 +389,7 @@ diff --git a/tags/mq/index.html b/tags/mq/index.html index ab47ca1145..5344d1869e 100644 --- a/tags/mq/index.html +++ b/tags/mq/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/mysql/index.html b/tags/mysql/index.html index 4b545d1cbd..ad1e345275 100644 --- a/tags/mysql/index.html +++ b/tags/mysql/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/namespace/index.html b/tags/namespace/index.html index 93db78110b..f95afd118f 100644 --- a/tags/namespace/index.html +++ b/tags/namespace/index.html @@ -368,20 +368,20 @@ @@ -406,7 +406,7 @@ diff --git a/tags/nginx/index.html b/tags/nginx/index.html index 62ddc26fd9..b25c1b0448 100644 --- a/tags/nginx/index.html +++ b/tags/nginx/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/openresty/index.html b/tags/openresty/index.html index 474ae7d1ed..5216568f62 100644 --- a/tags/openresty/index.html +++ b/tags/openresty/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/php/index.html b/tags/php/index.html index 18a29bfb87..8b79effdb1 100644 --- a/tags/php/index.html +++ b/tags/php/index.html @@ -351,20 +351,20 @@ @@ -389,7 +389,7 @@ diff --git a/tags/python/index.html b/tags/python/index.html index 54e4ebd073..d020c8d7ad 100644 --- a/tags/python/index.html +++ b/tags/python/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/spark/index.html b/tags/spark/index.html index 0591f92977..30dc473632 100644 --- a/tags/spark/index.html +++ b/tags/spark/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/swoole/index.html b/tags/swoole/index.html index e730d4230b..5f24b49d46 100644 --- a/tags/swoole/index.html +++ b/tags/swoole/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/uname/index.html b/tags/uname/index.html new file mode 100644 index 0000000000..a90cdbc584 --- /dev/null +++ b/tags/uname/index.html @@ -0,0 +1,512 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tag: uname | Nicksxs's Blog + + + + + + + + + + + + + + + + +
+
+ +
+
+
+ + +

What hurts more, the pain of hard work or the pain of regret?

+
+ + +
+ + + +
+
+ + +
+ + 0% +
+ + + + +
+
+
+ + +
+ + + + + +
+
+
+

uname + Tag +

+
+ + +
+

2020

+
+ + + +
+
+ + + + + + + + +
+ + + + +
+ + + + + + + + +
+
+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tags/websocket/index.html b/tags/websocket/index.html index 48cb8b8cae..58bf846927 100644 --- a/tags/websocket/index.html +++ b/tags/websocket/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/分布式锁/index.html b/tags/分布式锁/index.html index e73671eecf..de40ddf653 100644 --- a/tags/分布式锁/index.html +++ b/tags/分布式锁/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/单例/index.html b/tags/单例/index.html index 2d533761f2..e0dbffa1be 100644 --- a/tags/单例/index.html +++ b/tags/单例/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/博客,文章/index.html b/tags/博客,文章/index.html index 724a86d3a5..fc1800a0d2 100644 --- a/tags/博客,文章/index.html +++ b/tags/博客,文章/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/发行版/index.html b/tags/发行版/index.html new file mode 100644 index 0000000000..11f3e123c1 --- /dev/null +++ b/tags/发行版/index.html @@ -0,0 +1,512 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tag: 发行版 | Nicksxs's Blog + + + + + + + + + + + + + + + + +
+
+ +
+
+
+ + +

What hurts more, the pain of hard work or the pain of regret?

+
+ + +
+ + + +
+
+ + +
+ + 0% +
+ + + + +
+
+
+ + +
+ + + + + +
+
+
+

发行版 + Tag +

+
+ + +
+

2020

+
+ + + +
+
+ + + + + + + + +
+ + + + +
+ + + + + + + + +
+
+ +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tags/寄生虫/index.html b/tags/寄生虫/index.html index a833c708a7..3767dfe4f6 100644 --- a/tags/寄生虫/index.html +++ b/tags/寄生虫/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/年终总结/index.html b/tags/年终总结/index.html index a319952620..72810343d8 100644 --- a/tags/年终总结/index.html +++ b/tags/年终总结/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/影评/index.html b/tags/影评/index.html index cd5bb91696..6ae86d4526 100644 --- a/tags/影评/index.html +++ b/tags/影评/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/数据结构/index.html b/tags/数据结构/index.html index 036e571455..48cde59434 100644 --- a/tags/数据结构/index.html +++ b/tags/数据结构/index.html @@ -431,20 +431,20 @@ @@ -469,7 +469,7 @@ diff --git a/tags/源码/index.html b/tags/源码/index.html index f4c3a6d102..df300464de 100644 --- a/tags/源码/index.html +++ b/tags/源码/index.html @@ -431,20 +431,20 @@ @@ -469,7 +469,7 @@ diff --git a/tags/生活/index.html b/tags/生活/index.html index 64a67a1e7e..6a23eea285 100644 --- a/tags/生活/index.html +++ b/tags/生活/index.html @@ -348,20 +348,20 @@ @@ -386,7 +386,7 @@ diff --git a/tags/设计模式/index.html b/tags/设计模式/index.html index cf527f2eca..0b3870e2bb 100644 --- a/tags/设计模式/index.html +++ b/tags/设计模式/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@ diff --git a/tags/读后感/index.html b/tags/读后感/index.html index 8d4de725d5..77f3d71192 100644 --- a/tags/读后感/index.html +++ b/tags/读后感/index.html @@ -328,20 +328,20 @@ @@ -366,7 +366,7 @@