Mark's Blog - Quchao.net / zh-CN Mark's Blog Mon, 24 May 2021 01:02:00 +0800 Mon, 24 May 2021 01:02:00 +0800 群晖定时重启 Docker 容器镜像任务 /Synology-Docker-Restart.html /Synology-Docker-Restart.html Mon, 24 May 2021 01:02:00 +0800 Mark 前言

这段时间一直在群晖跑着某东羊毛镜像,长时间运行后会造成内存占用异常的情况发生,想到重新打包镜像,但是里面有涉及的东西比较多,没仔细检查哪里的原因,但是就是异常占用,既然找到了原因那解决起来也很简单,定期重启 Docker 容器即可解决,查阅了资料网上各种教程什么通过 SSH 再设置 Crontab 的我是不采纳的,既破坏了系统又麻烦。所以推荐我的方法来解决此类问题。


方法

打开群晖的控制面板,找到任务计划然后增加一条“计划的任务”用户自定义的脚本,这时候进入了创建任务窗口,设置方法见下。
常规:任务名称:随便写(你的任务名称)用户账号就默认root就OK,勾选已启动选项。
计划:这个按需设置你需要重启容器的时间即可。
任务设置:通知设置按需设置,运行命令是最重要的,比如我要重启的镜像名字是 QuchaoNet-BOT
填写:

docker restart QuchaoNet-BOT

小结

既然我们通过计划任务做重启,当然我们也可以灵活变通其他的,比如定时启动容器,定时关闭容器。
#启动容器
docker start QuchaoNet-BOT
#停止容器
docker stop QuchaoNet-BOT
]]>
0 /Synology-Docker-Restart.html#comments /feed/Synology-Docker-Restart.html
群晖、坚果云、Centos同步小记 /Synology-Centos-WebDAV.html /Synology-Centos-WebDAV.html Sun, 16 May 2021 13:56:00 +0800 Mark 前言

最近有这么个需求场景,群晖、坚果云、Centos 之间共同同步,能想到最方便的就是用WebDAV的方式了,然后我在部署的过程以及坑写下来,希望能给大家带来一点帮助。


安装过程

1坚果云注册账号
2设置坚果云应用密码(账户信息 -> 安全选项 -> 第三方应用管理)
3Centos 安装 davfs2

#安装依赖
apt-get install neon -y  
#安装davfs2 
apt-get install davfs2 -y 
4Centos 配置 davfs2
/etc/davfs2/davfs2.conf中的 ignore_dav_header 0 改为 ignore_dav_header 1,否则下面的挂载操作会报:mount.davfs: mounting failed; the server does not support WebDAV.这是因为兼容性问题,修改的这条参数如果前面有注释 请删除。
5Centos 配置 davfs2 非交互式挂载
/etc/davfs2/secrets配置文件的底部加以下信息
https://dav.jianguoyun.com/dav/backup 坚果云账户 应用密码
坚果云账户为坚果云登录邮箱、应用密码为第 2 步设置的应用密码。 挂载目录
mount.davfs https://dav.jianguoyun.com/dav/backup  /mark
backup 为你要备份的目录、/mark 为你 Centos 挂载目录。 6群晖 安装 Cloud Sync 套件
7群晖 配置 Cloud Sync 套件
点击 Cloud Sync 左下角的 + 号, 选择 WebDAV ,服务器地址填写 https://dav.jianguoyun.com/dav 用户账户是坚果云登录邮箱,密码就是应用密码。 然后到这里基本就结束了,根据自己需求设置任务列表、计划、设置。

小结

最近断更了,有心无力,琐事太多,谢谢一直关注我的朋友们,一切都很好,接下来会努力追更~ ]]>
0 /Synology-Centos-WebDAV.html#comments /feed/Synology-Centos-WebDAV.html
CRON表达式速成指南 /Crontab.html /Crontab.html Tue, 09 Feb 2021 20:19:00 +0800 Mark 前言

最近随着某些羊毛软件日益繁多,接触CRON 表达式也很频繁,很多人其实并不是很了解 CRON,也有人经常问我,在这里就给大家讲解一下如何写 CRON 表达式,当然如果你感觉浪费时间枯燥无味,也可以直接用下面我写的例子直接修改为自己的,指南分为速成版跟进阶版,根据需要进行阅读。


介绍

Linux Crontab是用来定期执行程序的命令。

当安装完成操作系统之后,默认便会启动此任务调度命令。

Crond 命令每分钟会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。


速成

表达式有好几种字段规范,如:Quantumult X(俗称“圈X”)支持 5 位或 6 位,他们的区别就是有没有秒的支持(6位左面第一个就是秒,5位就是左面第一位是分),以此往前类推 秒_分_时_日_月_周(礼拜几),所以最大值应该是59秒 59分 23点 31日 12月 7礼拜天

# 五位说明:
*    *    *    *    *
-    -    -    -    -
|    |    |    |    |
|    |    |    |    +----- 星期
|    |    |    +---------- 月份
|    |    +--------------- 日
|    +-------------------- 时
+------------------------- 分
# 六位说明:
*    *    *    *    *    *
-    -    -    -    -    -
|    |    |    |    |    | 
|    |    |    |    |    +----- 星期
|    |    |    |    +---------- 月份
|    |    |    +--------------- 日
|    |    +-------------------- 时
|    +------------------------- 分
+------------------------------ 秒
# 实例:
*/4 7-22/1 * * *    # 每天7-22点 每4分钟执行一次
*/4 * * * *         # 全天4分钟一次
*/14 * * * *        # 全天14分钟执行一次
1 0 * * *           # 每天 0点1分执行
0 9 * * *           # 每天9点执行
0 9,12,18 * * *     # 每天9点 12点 18点分别执行一次
0 0-16/8 * * *      # 每天0点 8点 16点各一次
30 18 * * *         # 每天18点30分
10 */4 * * *        # 每天每4小时10分执行一次
1 2 1,8,16,24/1 * * # 每月1 8 16 24日 凌晨2点1分执行
0 * * * *           # 每1小时执行一次

高阶

字段是否必填允许值允许特殊字符备注
0–59*,-标准实现不支持此字段。
分钟0–59*,-
小时0–23*,-
1–31*,-?LW?LW只有部分软件实现了
1–12 or JAN–DEC*,-
星期0–7 or SUN–SAT*,-?L#?L#只有部分软件实现了
Linux和Spring的允许值为0-7,0和7为周日
Quartz的允许值为1-7,1为周日
年份1970–2099*,-标准实现不支持此字段。

标准字段

逗号用于分隔列表。例如,在第5个字段(星期几)中使用 MON,WED,FRI 表示周一、周三和周五。

连字符定义范围。例如,2000-2010 表示2000年至2010年期间的每年,包括2000年和2010年。

除非用反斜杠(\)转义,否则命令中的百分号(%)会被替换成换行符,第一个百分号后面的所有数据都会作为标准输入发送给命令。

非标准字段

“L”代表“Last”。当在星期几字段中使用的时候,可以指定给定月份的结构,例如“最后一个星期五”(5L)。在月日字段中,可以指定一个月的最后一天。

“日”字段可以使用“W”字符。指定最接近给定日期的工作日(星期一-星期五)。例如,15W,意思是:“最接近该月15日的工作日。”;所以,如果15号是星期六,触发器在14号星期五触发。如果15日是星期天,触发器在16日星期一触发。如果15号是星期二,那么它在15号星期二触发。“1W”,如果这个月的第一天是星期六,不会跨到上个月,触发器会在这个月的第三天(也就是星期一)触发。只有指定一天(不能是范围或列表)的时候,才能指定“W”字符。

星期几字段可以使用“#”,后面必须跟一个介于1和5之间的数字。例如,5#3表示每个月的第三个星期五。

在某些实现中,“?”用来代替“*”以将月中的某一天或周中的某一天留空。其他cron的实现是替换“?”为cron守护进程的启动时间,例如:??* * * *,如果cron在上午8:25启动,将更新为25 8 * * * *并在每天的这个时间运行,直到再次重新启动。

分钟字段设置 */5表示每5分钟一次,注意:这里指的是能被5整除的分钟数。

结语

最后附上在线执行工具,如果你不确定表达式的写法,或者无法解读,把 CRON 表达式 贴上确定一下。 https://tool.lu/crontab
网友分享 https://crontab.guru/ ]]>
7 /Crontab.html#comments /feed/Crontab.html
2020年十大网络用语出炉 /Language-2020.html /Language-2020.html Fri, 01 Jan 2021 00:00:00 +0800 Mark 前言

  国家语言资源监测与研究中心发布“2020年度十大网络用语”。本次发布的十大网络用语依次为:逆行者秋天的第一杯奶茶带货云监工光盘行动奥利给好家伙夺冠不约而同集美

  “2020 年度十大网络用语”是基于国家语言资源监测语料库(网络媒体部分),采用“以智能信息处理技术为主,兼顾领域专家意见和搜索引擎收录情况”的方式获得的。监测语料库包含网络论坛、新闻、博客等不同媒体形式语言资源。据悉,此次发布涉及的网络论坛部分数据包含约30万个帖子,字符数超过3亿。对于今天发布的“2020年度十大网络用语”,有网友表示自己常用的有好几个:


解读

一、逆行者

  指反向行走的人,常用于称呼面对危难挺身而出的强者,如抗击新冠肺炎疫情中的最美“逆行者”。平凡人中涌现的无数“逆行者”,用生命守护生命,深刻诠释着新时代英雄精神的内涵。

二、秋天的第一杯奶茶

  指秋天来了,情侣、好友或家人之间以请喝奶茶之名发红包,表达亲密之情,金额多为52.0元(谐音“我爱你”)。

三、带货

  指明星、网红、互联网营销师等通过视频直播等途径对商品进行推销。各行各业人员加入直播带货行列,助力地方经济发展。

四、云监工

  原指抗击新冠肺炎疫情期间,数千万网友在线观看武汉火神山、雷神山医院建设现场24小时直播,主动充当“云监工”。现泛指通过网络远程监督某件事的进展。

五、光盘行动

  “光盘”是指将盘子里的东西吃光。“光盘行动”旨在让人们培养节约习惯,养成珍惜粮食、反对浪费的习惯。对“舌尖上的浪费”说不,居安思危,牢记“谁知盘中餐,粒粒皆辛苦”。

六、奥利给

  该词是“给力噢”的倒读,因网络主播的使用而流行。作为感叹词,包含赞美、加油打气等多种感情色彩,被网友配以夸张、魔性的表情和音调广泛使用。

七、好家伙

  最早是相声中常见的语气词,表示感叹之意。后来网友在吐槽某事或对某事感到惊讶时,通常会加上“好家伙”加强语气。

八、夺冠

  该词因同名电影《夺冠》而流行,电影展示了中国几代女排人不服输的劲头。这种默默付出、顽强到底的“女排精神”,成为“中国精神”的一个缩影。

九、不约而同

  原指没有事先商量而彼此见解或行动一致。因新冠肺炎疫情,该词有了新含义:不约会、不聚集已经成了大家共同遵守的规则。

十、集美

  源于网络上的一个称呼。某网络主播在直播时经常将“姐妹”发音成“集美”,显得亲近可爱,于是网友纷纷效仿,以此称呼自己的好姐妹。


结语

不管如何2020已离我们而去,2021祝愿大家工作顺利,幸福安康~

]]>
8 /Language-2020.html#comments /feed/Language-2020.html
宝塔(BT)面板安装 AList 阿里云盘列表程序 /AList.html /AList.html Mon, 28 Dec 2020 02:17:00 +0800 Mark 前言

经历了 2016 年的云盘关停潮之后,百度网盘和腾讯微云成为互联网企业中的行业代表,现在阿里也带来了两款云盘产品,分别是阿里云盘和 Teambition,今天我们要说的是前者,之前很多用过OneDrive列表程序风靡一段时间后因不稳定等原因被纷纷抛弃了,Mark也从阵营中换到了Fast大家庭,直到现在阿里推出的云盘,也好刚好Xhofe大佬开发了一个列表程序,今天我们就来讲一下如何在宝塔面板上搭建吧!


程序

后端程序 https://github.com/Xhofe/alist
前端程序 https://github.com/Xhofe/alist-web
引用作者的一段介绍:
[scode type="lblue"]阿里云盘的目录文件列表程序,后端基于 Golang 最好的 Http 框架 Gin,前端使用 Vue 和 Ant design[/scode]


演示

Mark's Drivehttps://ali.quchao.net
以上演示地址由 Mark 提供。


需要

  • 宝塔面板
  • Nginx
  • Supervisor管理器

部署

1进入宝塔面板 -> 网站 -> 添加站点

  • 域名:填写列表程序的将要使用域名
  • FTP:不创建
  • 数据库:不创建
  • PHP版本:纯静态

2创建好后直接进入网站根目录,删除里面的404.htmlindex.html
3AList Release(https://github.com/Xhofe/alist/releases) 下载对应系统的程序后端,上传至根目录并解压。
PS也可以直接点击目录列表左上角的远程下载,URL添加下载地址。
4前往AList-Web Release(https://github.com/Xhofe/alist-web/releases) 下载打包好的前端,解压得到一个dist目录放到alist同级目录下,具体操作同上。
5在同级目录下新建一个conf.yml配置文件,复制以下内容到该文件中:

info:
  title: AList #网站名称,如果填写,则会替换掉默认的
  site_url: http://localhost #网站地址,前后端分离时必须正确填写
  logo: #网站logo,如果填写,则会替换掉默认的
server:
  port: "5244" #程序监听端口
  search: false
  static: dist
ali_drive:
  api_url: https://api.aliyundrive.com/v2
  root_folder: root #根目录
  access_token: #可不填
  refresh_token: #必填!!!
  max_files_count: 3000 #一次性最大文件数量

6获取refresh_token,登录云盘: (https://www.aliyundrive.com/)
7打开开发者工具(F12),刷新页面,切换到Application选项卡,点开Local storage,会有一个Token项,点开就可以看到refresh_token,保存后面数值。
8填入刚获取到的refresh_token,填写到第 5 步中配置文件中对应的值,其他值根据需要可以修改,也可以默认。
9如果你现在配置完成后网站根目录下应该有两个文件 alist、conf.yml 和一个 dist 文件夹。
PS如果你不是宝塔面板,请在该文件夹下面执行下面的命令(Linux)如果不是宝塔可以用运行以下命令执行启动。
chmod +x alist
nohup ./alist >log.log 2>&1 &
10宝塔面板 -> 软件商店 -> 搜索Supervisor管理器守护进程并安装。
11设置Supervisor并确定。
  • 名称:Alidrive
  • 启动用户:root
  • 运行目录:填写网站目录(例如:/www/wwwroot/ali/)
  • 启动命令:nohup ./alist >log.log 2>&1 &
  • 进程:1


浏览

现在可以浏览器中打开:服务器IP:5244进行访问了。

反代 和 SSl

可参考以前项目中的步骤 宝塔新版本反代和 SSl有点问题,需要先设置SSl,再开反代。 [post cid="880" /]

结语

2020 年即将要结束了,今年是个不平凡,博客更新也不积极,希望大家多多包涵,希望接下来的一年可以带给大家更多内容。 ]]>
5 /AList.html#comments /feed/AList.html
生活模仿艺术 /life-imitating-art.html /life-imitating-art.html Mon, 14 Dec 2020 03:05:00 +0800 Mark 前言


提高对影视作品的鉴赏能力,对于一个人的现实生活是很重要的。我发现的规律是,低级的影视作品制造低级的人,高品质的影视作品制造高品质的人。


正文

某人说过:“不是艺术模仿生活,而是生活模仿艺术”。每当人有人谈论艺术,人们都不觉得会有什么实际的意义,艺术跟我有什么关系?很多人没想到,他这话是真的,而且直接影响到我们的生活。因为生活真的是在模仿艺术!

影视作品对人的作用,主要有两方面:剧情和演技。

剧情会影响人在现实生活中的行为方式。很多人会潜意识认为剧中的情节表现了现实社会的情况,现实会按剧中的情节发展,所以他们不知不觉模仿剧中人物的行为。

影视作品也会潜移默化影响人的价值观和世界观。现在国内很多“都市生活剧”,几乎都是各种商业情节,这总那总的,各种勾心斗角和潜规则。这些都会潜移默化影响真实的社会,形成不良风气。

最不好的一点是,国内这种片子里品质很差的人,很多最终没有受到惩罚,而是逍遥法外。这给年轻一代形成非常不好的影响。日本也会拍社会的阴暗面,可是最后他们一般都被惩罚了。日剧一般会丑化这种人的形象,而国产片很多会美化这类人,包装成无辜的样子。

另外,对于演技的品味,也会直接影响一个人对人的判断力。很多影视作品的演技如此之差,居然还有人喜欢。有些人给我推荐一些影片,结果我发现说话的节奏都不对。对话之间几乎没有停顿,貌似说话不需要思考一样,根本就是背台词的机器人。

能欣赏这种影片的人,一般也无法识别现实生活中的“演员”——那些伪装的人。中国的很多名人都是在演戏,演技如此差,很多人却看不出来。我觉得一个原因就是电视上差劲的演技看多了,已经不明白真实的人,或者演技好一点的是什么样子。

中国人特别不在行识别的一类身边的演员,叫做“伪君子”。这种人往往满口的仁义道德,各种赞美和鸡汤,却没有批判。还有一个特点是他们说话很慢,因为他们说的都是事先准备好的台词,所以需要挺长时间的计算,才能说出来。他们很难不提前准备就说出有水准的话来。

最近通过 AI 热,很多这种人都露出了原形。实际上我在第一眼看到他们的时候,就已经知道了他们是什么人。然而许多的中国观众却无法看出来,就是因为对演技的品味太差。

每当一些人跟说我“某某名人说……”,我都无语,因为那些人在十几年前就已经被我一眼看穿了,我根本不关心他们说什么。美国人演技就好很多,然而很多也是在演戏,并不是真实的人。因为演技好,就需要比较好的鉴别能力才能识别了。

]]>
3 /life-imitating-art.html#comments /feed/life-imitating-art.html
宝塔面板无法自动续签 SSL 问题解决方法 /BT-SSL.html /BT-SSL.html Fri, 20 Nov 2020 00:29:00 +0800 Mark 前言

今天网站突然提示 SSL 过期,宝塔不是可以自动续期吗?貌似之前经常需要手动去续,带着这个疑惑分了下是什么问题?接下来就是分析过程了。


分析

仔细看了一下日志,应该是是acme_v2的脚本问题。

|-共需要续签 1 张证书
|-正在续签第 1 张,域名: ['www.quchao.net']..
|-正在创建订单..
|-正在获取验证信息..
|-正在验证域名..
|-正在发送CSR..
|-正在下载证书..
Traceback (most recent call last):
File "/www/server/panel/class/acme_v2.py", line 692, in save_cert
self.sub_all_cert(key_file, pem_file)
File "/www/server/panel/class/acme_v2.py", line 714, in sub_all_cert
if to_cert_init['issuer'] != cert_init['issuer'] and to_cert_init['issuer'].find("Let's Encrypt") == -1:
AttributeError: 'NoneType' object has no attribute 'find'

|-续签成功!
看似成功实际上根本就没有成功。 于是定位到 /www/server/panel/class/acme_v2.py 714 行,
if to_cert_init['issuer'] != cert_init['issuer'] and to_cert_init['issuer'].find("Let's Encrypt") == -1:
这条语句出现了问题,应该改成
if to_cert_init['issuer'] != cert_init['issuer'] and str(to_cert_init['issuer']).find("Let's Encrypt") == -1:
即可正常签到。

相关

PS:还有老旧版本会存在一键证书卡死在“正在申请证书”
先执行cd /www/server/panel/class
再执行python acme_v2.py 会发现
Traceback (most recent call last): File "acme_v2.py", line 40, in import dns.resolver ImportError: No module named dns.resolver
此种情况一般是宝塔面板安装时或者安装后有交叉 Python 版本存在,Python2 和 3 的 pip 混乱导致 dnspython 无法安装 此时执行:
pip install dnspython
pip2 install dnspython
后再次申请证书即可正常使用 最新版不存在这个问题,如果上面命令还是无法解决你的问题最好是安装新版宝塔面板为妙。 ]]>
12 /BT-SSL.html#comments /feed/BT-SSL.html
斐讯 N1盒子ArmBian 密码重置小记 /N1-Passwd.html /N1-Passwd.html Mon, 09 Nov 2020 11:44:00 +0800 Mark 前言

斐讯 N1 真是一个性价比超高的盒子,可做电视盒可做NAS,使用过程中难免会遇到一些问题,本篇技术文早就该发布的,因为第二次发生这样的事故了。


场景

设备:斐讯 N1 盒子
系统:ARMBIAN


起因

其实总共发生两次:
第一次是因为当初没有把 N1 的系统密码保存在KeePass而是随手记录在桌面的 txt 文件,结果系统盘炸了,恢复后乱码,因为有很多资料需要取,研究了也没有好的解决方案,偶然发现我的群晖上面挂载了一个 root 账户的SFTP目录。
第二次是最近几天(还没吸取上次的教训,密码忘记存哪去了),但是Xftp上记录了上次登录信息。


方法

网上查阅了一些资料,也没有什么适用的解决方案,后来想 ARMBIAN 密码配置信息是在/etc/shadow,能不能把已知密码的配置信息覆盖于我的未知密码的配置信息中呢,于是找个朋友要了他 N1 盒子的配置信息,开始了常识,以下是朋友给我到我信息。
root:$1$KENXYs9G$/rMJpszsSyyYX1hUQkXu20:18557:0:99999:7::: 对应密码:16NBPlus
等我替换上重启设备,登录...成功了!


结语

其实也并不是什么技术文章,并且不是人人都可以用,毕竟需要一定的条件,首先就是你能访问到你的设备。
如果你也遇上这种问题,希望你也有我这么好运吧~

]]>
12 /N1-Passwd.html#comments /feed/N1-Passwd.html
中国程序员容易发音错误单词指南 /chinese-programmer-wrong-pronunciation.html /chinese-programmer-wrong-pronunciation.html Mon, 02 Nov 2020 00:03:00 +0800 Mark 前言

程序员们经常阅读英文资料,比如官方文档,有些技术术语很多朋友是读错的。比如:GUI。你是不是也像读 APP 这样,直接分别读了三个英文字母了。
最近在 GitHub 看到一个汇总了程序员经常读错的一些单词,请往下看。


发音

单词 正确发音(英音) 正确发音(美音) 错误发音
access /'?kses/ /??kses/ /?k'ses/
Adobe /?'d??bi/ /?'d??bi/ /??dub/
admin /'?dm?n/ /??dm?n/ /?:d'm?n/
adversarial /??dv??se?ri?l/ /??dv?r?seri?l/ /?d?v??rs?ri?l/
agile /'?d?a?l/ /??d?l/ /?'d?a?l/
amazon /'?m?z?n/ /??m?zɑ?n/ /'?meiz?n/ /?'meiz?n/
analogy /??n?l?d?i/ /??n?l?d?i/ /?n?'l?d?i/
Angular /'??gj?l?/ /???ɡj?l?r/ /'??ɡ?l?/ /'??d??l?/
AJAX /'eid??ks/ /'eid??ks/ /?'d??ks/
alias /?e?li?s/ /?e?li?s/ /?'lais/
Apache /?'p?t??/ /??p?t?i/ /?p?t?/
app /?p/ /?p/ /eipi'pi/
archive /'ɑ?ka?v/ /'ɑ?ka?v/ /'?t??v/
array /?'rei/ /??re?/ /?'rei/
ASCII /'?ski/ /??ski/ /ɑ?sk/
aspect /'?spekt/ /??spekt/ /?'spekt/
avatar /'?v?tɑ?/ /??v?tɑ?r/ /?'v?tɑ/
Azure /'???/ /????r/ /??z???/
bind /ba?nd/ /ba?nd/ /b?nd/
cache /k??/ /k??/ /k?t?/
clang /kl??/ /kl??/ /s?l??/
daemon /'di?m?n/ /?di?m?n/ /d?m?n/
debt /det/ /det/ /de'bit/
deny /d?'na?/ /d??na?/ /'d?ni/
deprecate /?depr?ke?t/ /?depr?ke?t/
deque /'dek/ /d?k/ /di'kju/
digest n. /'dɑ?d??st/ v. /dɑ?'d??st/ /da??d?est,d??d?est/ /'d?g?st/
Dijkstra Dutch:/?d?ikstra/ English:/?da?kstr?/
Django /?d???ɡo?/ /?d???ɡo?/ /di?d???ɡo?/
doc /d?k/ /d?k/ /da?k/
epoch /?i?p?k/ /?ep?k/ /'?p?t?/
execute /?eks?kju?t/ /?eks?kju?t/
executor /?ɡ?zekj?t?(r)/ /?ɡ?zekj?t?r/
event /?'vent/ /??vent/ /'?v?nt/
facade /f?'sɑ?d/ /f??sɑ?d/ /'feikeid/
fedora /f?'d??r?/ /f??d??r?/ /'fed?r?/
format /'f??m?t/ /?f??rm?t/ /f?'m?t/
gauge /ɡe?d?/ /ɡe?d?/ /ɡɑud?/
Git /ɡ?t/ /ɡ?t/ /d??t/
GNU /gnu:/ /nu?,nju?/
Grafana /gr??fɑ?n?ɑ?/ /gr??fɑ?n?ɑ?/
GraphQL /gr?f kju ?l/ /gr?f kju ?l/ /d??gr?f kju ?l/
GUI /?ɡu:i/ /?ɡu:i/
Haskell /?h?sk?l/ /?h?sk?l/ /h??sk?l/
height /ha?t/ /ha?t/ /he?t/
hidden /'h?dn/ /?h?dn/ /'ha?dn/
image /'?m?d?/ /??m?d?/ /?'me?d?/
implement /'?mpl?m(?)nt/ /??mpl?m?nt/ /??mpl??ment/ /?m'plem(?)nt/
integer /'?nt?d??/ /??nt?d??r/ /??nta?g?/
issue /'??u?/ /???u?/ /?a??u?/
Java /'d?ɑ?v?/ /?d?ɑ?v?/ /'d?ɑ?vɑ?/
jpg /'d?e?peɡ/ /'d?e?peɡ/ /?d?e??pi:?d?i?/
key /ki?/ /ki?/ /kei/
Kubernetes* /kubз'net?s/ /ku?b??'netiz/
lambda /?l?md?/ /?l?md?/ /?l??mdɑ/
linear /'l?n??/ /?l?ni?r/ /'la??/
Linux /'l?n?ks/ /?la?n?ks/ /?l?n?ks/ /?l?n?ks/ /?l?nju?ks/
locale /l??'kɑ?l/ /lo??k?l/ /?lo?k(?)l/
Lucene /lu'si?n/ /lu'si?n/ /'lu:s?n/
main /me?n/ /me?n/ /m?n/
margin /'mɑ?d??n/ /?mɑ?rd??n/ /'m?g?n/
matrix /?me?tr?ks/ /?me?tr?ks/ /?mɑ:tr?ks/
maven /'me?vn/ /?me?vn/ /'ma?vn/
Microsoft /'maikr?us?ft/ /?ma?kr?s??ft/ /'mikr?us?ft/
miscellaneous /?m?s??le?ni?s/ /?m?s??le?ni?s/
module /'m?dju?l/ /?mɑ?d?u?l/ /'m??dl/
nginx Engine X Engine X
null /n?l/ /n?l/ /na?/
obsolete /??bs?li?t/ /?ɑ?bs??li?t/
OS X OS ten OS ten /?s eks/
phantom /'f?nt?m/ /?f?nt?m/ /'p?nt?m/
parameter /p?'r?m?t?/ /p??r?m?t?r/ /'p?r?m?t?/
privilege /'pr?v?l?d?/ /?pr?v?l?d?/ /'pr?v?l?d?/
Prometheus /pr?-?mē-thē-?s/ /pro'miθ??s/
putty /?p?ti/ /?p?ti/ /?pu?ti/
Qt /kju?t/ /kju?t/
query /'kw??ri/ /?kw?ri/ /'kwa?ri/
Realm /relm/ /relm/ /ri?lm/
reconcile /?rek?nsa?l/ /?rek?nsa?l/
Redux /ri'd?ks/ /ri'd?ks/ /'ridju:ks/
resume /r?'zju:m/ /r??zu?m/ /r?'sju:m/
resolved /r?'z?lvd/ /r??zɑ?lvd/ /r?'s??vd/
resort /r??z?:t/ /r??z??rt/ /r??s?:t/
retina /'ret?n?/ /?ret?n?/ /ri'tina/
route /ru?t/ /ru?t,ra?t/ /r??t/
San Jose /s?nh?u'zei/ /s?nh?u'zei/ /s?n'ju:s/
safari /s?'fɑ?r?/ /s??fɑ?ri/ /s?f?r?/
scheme /ski?m/ /ski?m/ /s'k?m?/
scala /?skɑ?lɑ/ /?skɑ?lɑ/ /?sk??lɑ/
segue /'s?ɡwe/ /?seɡwe?/ /se'd?/
SQL /?si?kw?l/ /?es?kju??el/ /?si?kw?l/ /?es?kju??el/
sudo /'su?du?/ /'su?du?/
suite /swi?t/ /swi?t/ /sju?t/
thymeleaf /?ta?m?l??f/ /?ta?m?l??f/ /θi?m?l??f/
tuple /tj?p?l/ /tu?p?l/
typical /'t?p?kl/ /?t?p?kl/ /'ta?p?k?l/
Ubuntu /?'b?nt?/ /?'b?nt?/ /ju?'b?nt?/
Vagrant /?ve?ɡr?nt/ /?ve?ɡr?nt/ /?vag?ent/
variable /'ve?ri?bl/ /?veri?bl,?v?ri?bl/ /v?'rai?bl/
verbose /v???b??s/ /v??r?bo?s/ /'v??rbo?s/
vue /v'ju:/ /v'ju:/ /v'ju:i/
width /w?dθ/ /w?dθ,w?tθ/ /wa?dθ/
YouTube /'ju?'tju?b/ /'ju?'tju?b/ /'ju?'t?b?/

附注

当使用简名 ‘Kube’ 称呼 ‘Kubernetes’ 时, 发音则与 ‘cube’(/kju?b/) 一致。


其他相关链接

  1. 真人发音 https://www.bilibili.com/video/bv1nv411i7z3 (by @hailintao)
  2. 简洁的单词列表,正确读音不用再打开新网页 https://cpwp.netlify.app/ (by @antfu7)
  3. 国际音标严式记音(纽约音)https://github.com/b1f6c1c4/programming-pronunciations-en_US (by @b1f6c1c4)

说明

  1. 本着简单的原则, 又为了避免程序猿们出现选择困难症, '正确音标'采用了最接近有道词典音频的英式 DJ 音标, 不代表其唯一性
  2. 专业在线英语词典请参考知乎链接:在线英语词典哪个比较好?
非 Mark 整理,只优化了显示样式,资料地址:https://github.com/shimohq/chinese-programmer-wrong-pronunciation
]]>
3 /chinese-programmer-wrong-pronunciation.html#comments /feed/chinese-programmer-wrong-pronunciation.html
苹果 iPhone 12 Pro Max 内置壁纸 超高清 /iPhone12.html /iPhone12.html Sat, 17 Oct 2020 18:41:37 +0800 Mark 前言

苹果今年发布了 iPhone 12 mini、iPhone 12、iPhone 12 Pro 和 iPhone 12 Pro Max 四款新机,其中 iPhone 12 和 iPhone 12 Pro 已经开始预售,其余两款则要等到 11 月 6 日。今年的四款新机全都采用了新设计新配色,并且全线配备了 OLED 全面屏和 5G 网络支持。虽然价格比起去年没太大的变化,但这次苹果“为了环保”移除了随盒的充电器和耳机还是让部分人心里不爽的。如果你觉得现在的手机能再战几年,打算持币观望,那么目前可以先提前下载 iPhone 12 的全套壁纸先感受一下气氛。


iPhone 12 Pro 全套壁纸下载 (部分预览)

此次分享的这套壁纸分辨率为 1356x2934,基本上可满足绝大部分手机的使用。实际上机显示效果还是很不错的,如果你喜欢这种简约的设计风格的话不妨下载这套壁纸回去试试看吧。
共 10 张,其中 5 张是浅色模式,还有 5 张是深色模式,分别为黑色、蓝色、绿色、红色和白色五种颜色。

iPhone12 壁纸

下载

提取密码y23u



解压密码评论自动可见,评论完成需刷新本页(密码是为了统计下载次数及强化网址记忆,如带来不便敬请谅解)
]]>
111 /iPhone12.html#comments /feed/iPhone12.html