博客园 - goodcitizen
uuid:24b78886-0ed1-41c2-8670-e3f31dcf42c4;id=28298
2024-03-28T09:44:38Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
feed.cnblogs.com
https://www.cnblogs.com/goodcitizen/p/how_exit_calls_atexit_functions.html
[glibc] 带着问题看源码 —— exit 如何调用 atexit 处理器 - goodcitizen
atexit 处理器中再次调用 exit 为什么能正常运行?atexit 处理器中再次调用 atexit 注册的函数为什么能正常被调用?带着这些疑问来看看 glibc 是用什么数据结构存储终止处理器的,另外看看打印这些结构时遇到了哪些问题
2023-10-24T01:11:00Z
2023-10-24T01:11:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】atexit 处理器中再次调用 exit 为什么能正常运行?atexit 处理器中再次调用 atexit 注册的函数为什么能正常被调用?带着这些疑问来看看 glibc 是用什么数据结构存储终止处理器的,另外看看打印这些结构时遇到了哪些问题 <a href="https://www.cnblogs.com/goodcitizen/p/how_exit_calls_atexit_functions.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/solution_about_pbjs_encode_bytes_data_failed_problem.html
pbjs 无法编码 bytes 类型数据问题的解决方案 - goodcitizen
一段包含 bytes 类型的 protobuf 二进制数据,经过 pbjs 解码生成的 json 文件,再传递给 pbjs 编码后生成的二进制数据和原始数据差异巨大,经过一番探究,发现居然是 pbjs 的一个 bug,快来看看你是否踩过这个坑吧~
2023-09-25T07:12:00Z
2023-09-25T07:12:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】一段包含 bytes 类型的 protobuf 二进制数据,经过 pbjs 解码生成的 json 文件,再传递给 pbjs 编码后生成的二进制数据和原始数据差异巨大,经过一番探究,发现居然是 pbjs 的一个 bug,快来看看你是否踩过这个坑吧~ <a href="https://www.cnblogs.com/goodcitizen/p/solution_about_pbjs_encode_bytes_data_failed_problem.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/things_about_process_environment.html
[apue] 进程环境那些事儿 - goodcitizen
atexit 注册的处理器中可以再调 atexit 或 exit 吗?putenv 或 setenv 增加一个环境变量后 environ 指针地址为什么变了?setjmp & longjmp 跨函数跳转后自动变量为什么回退了?设置 RLIMIT_NPROC 为 10 为何连一个子进程也 fork 不了?设置 RLIMIT_NOFILE 后为何 sysconf 的返回值也受到了影响?本文为你一一解答
2023-08-29T02:30:00Z
2023-08-29T02:30:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】atexit 注册的处理器中可以再调 atexit 或 exit 吗?putenv 或 setenv 增加一个环境变量后 environ 指针地址为什么变了?setjmp & longjmp 跨函数跳转后自动变量为什么回退了?设置 RLIMIT_NPROC 为 10 为何连一个子进程也 fork 不了?设置 RLIMIT_NOFILE 后为何 sysconf 的返回值也受到了影响?本文为你一一解答 <a href="https://www.cnblogs.com/goodcitizen/p/things_about_process_environment.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/add_synchronous_track_for_ride_video_by_baidu_roadmap.html
使用百度地图路书为骑行视频添加同步轨迹 - goodcitizen
想要将骑行视频和轨迹视频同步播放,试了几个工具都实现不了,最后发现 BMapLib.LuShu 组件的一个隐藏功能,完美的满足了我的需求。使用 shell 脚本做了个将轨迹数据一键导出为轨迹动画的工具,期间遇到了坐标转换、遗漏经停点等等难题,进来看看我是怎么解决的吧~
2023-07-25T06:37:00Z
2023-07-25T06:37:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】想要将骑行视频和轨迹视频同步播放,试了几个工具都实现不了,最后发现 BMapLib.LuShu 组件的一个隐藏功能,完美的满足了我的需求。使用 shell 脚本做了个将轨迹数据一键导出为轨迹动画的工具,期间遇到了坐标转换、遗漏经停点等等难题,进来看看我是怎么解决的吧~ <a href="https://www.cnblogs.com/goodcitizen/p/add_synchronous_track_for_ride_video_by_baidu_roadmap.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/handle_protobuf_data_by_shell_scripts.html
使用脚本收发 protobuf 协议数据 - goodcitizen
服务器使用二进制的 protobuf 协议,如何使用脚本模拟请求?答案是将它转成 json 再用 jq 处理,一起来看看吧~
2023-06-06T03:20:00Z
2023-06-06T03:20:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】服务器使用二进制的 protobuf 协议,如何使用脚本模拟请求?答案是将它转成 json 再用 jq 处理,一起来看看吧~ <a href="https://www.cnblogs.com/goodcitizen/p/handle_protobuf_data_by_shell_scripts.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/debugging_500_problem_for_shell_script_of_enter_permits_of_beijing_sixth_ring.html
使用 shell 脚本自动申请进京证 (六环外) —— debug 过程 - goodcitizen
写好的自动办理六环外进京证脚本跑不通,总是返回办理业务人数较多 (500) 错误,Charles / VNET 抓包、android 交叉编译 jq、升级 curl…都不起作用,最终还是神奇的 adb shell 帮了大忙,最后定位到根因,居然是用 shell 字符串长度作为数据长度导致的,这错误犯的有点低级……
2023-05-09T07:09:00Z
2023-05-09T07:09:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】写好的自动办理六环外进京证脚本跑不通,总是返回办理业务人数较多 (500) 错误,Charles / VNET 抓包、android 交叉编译 jq、升级 curl…都不起作用,最终还是神奇的 adb shell 帮了大忙,最后定位到根因,居然是用 shell 字符串长度作为数据长度导致的,这错误犯的有点低级…… <a href="https://www.cnblogs.com/goodcitizen/p/debugging_500_problem_for_shell_script_of_enter_permits_of_beijing_sixth_ring.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/unix_date_time_api_relationship_in_one_picture.html
[apue] 一图读懂 Unix 时间日期例程相互关系 - goodcitizen
GMT 和 UTC 时间有何区别?Unix 时间例程为何不处理闰秒?系统时区是如何设置的?哪些时间例程受夏时制影响?localtime 和 gmtime 是否共享内部存储区?strftime 获取第几周使用的 %U/%V/%W 有何区别?linux date 和 mac date 语法有何区别?本文一一为你解答
2023-04-17T02:25:00Z
2023-04-17T02:25:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】GMT 和 UTC 时间有何区别?Unix 时间例程为何不处理闰秒?系统时区是如何设置的?哪些时间例程受夏时制影响?localtime 和 gmtime 是否共享内部存储区?strftime 获取第几周使用的 %U/%V/%W 有何区别?linux date 和 mac date 语法有何区别?本文一一为你解答 <a href="https://www.cnblogs.com/goodcitizen/p/unix_date_time_api_relationship_in_one_picture.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/issue_enter_permits_of_beijing_outside_sixth_ring_by_shell_scripts.html
使用 shell 脚本自动申请进京证 (六环外) - goodcitizen
活动在帝都的外地车对进京证应该不陌生,六环外进京证虽然不限次数,但是超过中午就办不了当天的了,你是否还在为出门前才发现忘了办理当天的进京证而懊恼?你是否为办理每周的进京证定过闹钟?如今这一切不堪回首都将过去,欢迎使用 jinjing365 自动办理六环外进京证。
2023-03-07T07:01:00Z
2023-03-07T07:01:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】活动在帝都的外地车对进京证应该不陌生,六环外进京证虽然不限次数,但是超过中午就办不了当天的了,你是否还在为出门前才发现忘了办理当天的进京证而懊恼?你是否为办理每周的进京证定过闹钟?如今这一切不堪回首都将过去,欢迎使用 jinjing365 自动办理六环外进京证。 <a href="https://www.cnblogs.com/goodcitizen/p/issue_enter_permits_of_beijing_outside_sixth_ring_by_shell_scripts.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/concat_srt_files_by_shell_scripts.html
使用 shell 脚本拼接 srt 字幕文件 (srtcat) - goodcitizen
将多个 srt 文件拼接成一个,找了好多工具,都太重了,自己用 shell 手搓一个。一开始没觉得这个小工具有多么难,以为半天肯定能搞定,结果足足搞了三天。绊倒我的居然是时间字段的拆分和前导零的删除,看看 shell 里有多少种实现方案,以及我为何选择了当前的方案。
2023-02-14T02:17:00Z
2023-02-14T02:17:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】将多个 srt 文件拼接成一个,找了好多工具,都太重了,自己用 shell 手搓一个。一开始没觉得这个小工具有多么难,以为半天肯定能搞定,结果足足搞了三天。绊倒我的居然是时间字段的拆分和前导零的删除,看看 shell 里有多少种实现方案,以及我为何选择了当前的方案。 <a href="https://www.cnblogs.com/goodcitizen/p/concat_srt_files_by_shell_scripts.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/things_about_unix_system_data_file_and_information.html
[apue] Unix 系统数据文件那些事儿 - goodcitizen
如何免密 ssh 登录空密码账户?getpwent 为何会返回比 /etc/passwd 文件更多的内容?同样是修改附加组 ID,usermod -G 和 gpasswd -a/-d 有何区别?/etc/networks 有什么用处?gethostbyname / getservbyname 和 getaddrinfo 是什么关系?utmp / wtmp / btmp 在记录用户登录信息方面有何区别?本文一一为你解答。
2023-01-09T02:10:00Z
2023-01-09T02:10:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】如何免密 ssh 登录空密码账户?getpwent 为何会返回比 /etc/passwd 文件更多的内容?同样是修改附加组 ID,usermod -G 和 gpasswd -a/-d 有何区别?/etc/networks 有什么用处?gethostbyname / getservbyname 和 getaddrinfo 是什么关系?utmp / wtmp / btmp 在记录用户登录信息方面有何区别?本文一一为你解答。 <a href="https://www.cnblogs.com/goodcitizen/p/things_about_unix_system_data_file_and_information.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/cannot_download_terms_and_conditions_problem_on_samsung_tv.html
三星电视无法下载《条款和条件、隐私政策》的问题 (消息代码: 0-1) - goodcitizen
因为想看一部影片引发的对三星电视 app 功能的探索,没有重刷固件、没有远程协助,解决问题的方案居然是再简单不过的手机热点,将解决过程记录下来希望能帮到更多的三星中国用户,从一个侧面见证了三星产品在中国大陆退潮的缩影…
2022-12-26T02:11:00Z
2022-12-26T02:11:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】因为想看一部影片引发的对三星电视 app 功能的探索,没有重刷固件、没有远程协助,解决问题的方案居然是再简单不过的手机热点,将解决过程记录下来希望能帮到更多的三星中国用户,从一个侧面见证了三星产品在中国大陆退潮的缩影… <a href="https://www.cnblogs.com/goodcitizen/p/cannot_download_terms_and_conditions_problem_on_samsung_tv.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/output_chinese_character_on_screen_for_vguang_qrcode_scanner.html
微光互联 TX800-U 扫码器无法输出中文到光标的问题 - goodcitizen
程序员除了装电脑、破解密码,又增加了新的技能——修复不能扫描汉字的扫码器。受熟人委托,推托是推托不掉了,毕竟人家也不知道程序员里面还有一百种细分领域,硬着头皮看看吧…
2022-10-18T04:12:00Z
2022-10-18T04:12:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】程序员除了装电脑、破解密码,又增加了新的技能——修复不能扫描汉字的扫码器。受熟人委托,推托是推托不掉了,毕竟人家也不知道程序员里面还有一百种细分领域,硬着头皮看看吧… <a href="https://www.cnblogs.com/goodcitizen/p/output_chinese_character_on_screen_for_vguang_qrcode_scanner.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/things_about_standard_input_and_output.html
[apue] 标准 I/O 库那些事儿 - goodcitizen
提起标准 IO 库,第一印象就是 printf/scanf,这有什么可说的?但是一个流是如何处理宽窄字符集、缓存方式的?如何在程序内部将标准输出重定向到文件?FILE* 与 fd 是如何相互转换的?在处理大文件时 fseek/fseeko/fsetpos 有何区别?创建临时文件时 tmpnam/tempnam/mktemp/tmpfile/mkstemp 又有何区别?就算是讲 scanf,%i 与 %d 又有何区别?本文一一为你解答…
2022-09-20T03:58:00Z
2022-09-20T03:58:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】提起标准 IO 库,第一印象就是 printf/scanf,这有什么可说的?但是一个流是如何处理宽窄字符集、缓存方式的?如何在程序内部将标准输出重定向到文件?FILE* 与 fd 是如何相互转换的?在处理大文件时 fseek/fseeko/fsetpos 有何区别?创建临时文件时 tmpnam/tempnam/mktemp/tmpfile/mkstemp 又有何区别?就算是讲 scanf,%i 与 %d 又有何区别?本文一一为你解答… <a href="https://www.cnblogs.com/goodcitizen/p/things_about_standard_input_and_output.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/using_the_secondary_gopro_for_driving_recorder.html
使用二手 gopro 做行车记录仪 - goodcitizen
300 块入手了一个 gopro3+,还带了一堆配件,据说它的画质完爆同价位的行车记录仪,那么能用它来做摩托车行车记录仪吗?本文就此做出可行性分析,难倒我的不是如何配置 gopro,而是怎么破解它的 wifi 密码…
2022-08-16T03:23:00Z
2022-08-16T03:23:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】300 块入手了一个 gopro3+,还带了一堆配件,据说它的画质完爆同价位的行车记录仪,那么能用它来做摩托车行车记录仪吗?本文就此做出可行性分析,难倒我的不是如何配置 gopro,而是怎么破解它的 wifi 密码… <a href="https://www.cnblogs.com/goodcitizen/p/using_the_secondary_gopro_for_driving_recorder.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/hole_in_the_file.html
[apue] 文件中的空洞 - goodcitizen
文件中的洞,怎么来的,有什么用,探讨探讨……
2022-07-28T03:30:00Z
2022-07-28T03:30:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】文件中的洞,怎么来的,有什么用,探讨探讨…… <a href="https://www.cnblogs.com/goodcitizen/p/hole_in_the_file.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/pitfall_in_stl_sorter_on_multiple_conditions.html
不要使用短路逻辑编写 stl sorter 多条件比较 - goodcitizen
搞 c++ 十多年了,居然被小小的 sorter 绊倒了,记录一下…
2022-06-28T06:13:00Z
2022-06-28T06:13:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】搞 c++ 十多年了,居然被小小的 sorter 绊倒了,记录一下… <a href="https://www.cnblogs.com/goodcitizen/p/pitfall_in_stl_sorter_on_multiple_conditions.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/boost_bind_choke_on_function_overload.html
boost::bind 不能处理函数重载 (error: no matching function for call to 'bind') - goodcitizen
项目开发中遇到的一个问题,c++ 虐我千万遍,我待 c++ 如初恋…
2022-05-30T02:42:00Z
2022-05-30T02:42:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】项目开发中遇到的一个问题,c++ 虐我千万遍,我待 c++ 如初恋… <a href="https://www.cnblogs.com/goodcitizen/p/boost_bind_choke_on_function_overload.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/fetch_release_indicator_automatically_by_shell_scripts.html
使用 shell 脚本自动获取发版指标数据 - goodcitizen
工欲善其事,必先利其器,对于每次都要人工统计的发版数据,嗅到了一丝丝优化的空间……难倒我的不是 curl 使用 cookie 访问 web 服务器,而是如何解析 json 中数组的数组…
2022-04-20T01:46:00Z
2022-04-20T01:46:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】工欲善其事,必先利其器,对于每次都要人工统计的发版数据,嗅到了一丝丝优化的空间……难倒我的不是 curl 使用 cookie 访问 web 服务器,而是如何解析 json 中数组的数组… <a href="https://www.cnblogs.com/goodcitizen/p/fetch_release_indicator_automatically_by_shell_scripts.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/things_about_linux_filesystem.html
[apue] linux 文件系统那些事儿 - goodcitizen
本文尝试通过解释 api 接口底层做了什么来阐释 linux 文件系统在设计层面的一些考虑,配合通俗易懂的日常命令和简单程序来进行验证,践行“纸上得来终觉浅,绝知此事要躬行”的理念,目的是做一个 linux 文件系统的引入…
2022-03-23T08:07:00Z
2022-03-23T08:07:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】本文尝试通过解释 api 接口底层做了什么来阐释 linux 文件系统在设计层面的一些考虑,配合通俗易懂的日常命令和简单程序来进行验证,践行“纸上得来终觉浅,绝知此事要躬行”的理念,目的是做一个 linux 文件系统的引入… <a href="https://www.cnblogs.com/goodcitizen/p/things_about_linux_filesystem.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/goodcitizen/p/improve_efficient_of_shell_script_for_fetching_log_by_using_parallel_ssh.html
使用并发 ssh 连接来提升捞日志脚本执行效率 - goodcitizen
一个通过 ssh 捞取远程日志服务的脚本,执行一下居然要一个小时,每个 grep 任务已经在远程机器后台执行了,为何还这么慢呢?这是人性的泯灭还是道德的沦丧?本文为您揭露谜底……
2022-02-23T01:56:00Z
2022-02-23T01:56:00Z
goodcitizen
https://www.cnblogs.com/goodcitizen/
【摘要】一个通过 ssh 捞取远程日志服务的脚本,执行一下居然要一个小时,每个 grep 任务已经在远程机器后台执行了,为何还这么慢呢?这是人性的泯灭还是道德的沦丧?本文为您揭露谜底…… <a href="https://www.cnblogs.com/goodcitizen/p/improve_efficient_of_shell_script_for_fetching_log_by_using_parallel_ssh.html" target="_blank">阅读全文</a>