程序员夜话 1: 命令行

小时候家中没有电脑,只能不断的去蹭邻居家吃灰的台式机。几乎从三年级到高中都有订阅电脑迷的杂志,每期都会附赠一个光碟,除了当期内容配套的多媒体资源外,还有一个可引导的 DOS 和 Windows PE 环境。邻居家的电脑或许是九十年代的产物,即使微软已经在制作 Vista,这老旧的机器却连硬盘内安装的 Windows 98 都难以启动。只能在 DOS 中敲打随意的代码运行随机的程序。当时也没有地方去系统性的学习 DOS 的命令,之后除了按照网络上的教程配置服务器也没有什么接触命令行的机会。

最近而言,只携带 iPad 办公的计划已经推行了很久,从去年就开始着手打造出门只带 iPad 的场景。当时的想法很纯粹,使用 iPad 进行代码的书写后通过 SSH 和远程桌面连接放在家中的电脑或远程服务器来编译执行,也是一心想要买 iPad Pro 的动力所在。

当时配置远程环境时,虽说通过 SSH 连接终端又快又方便但我从来都不是一个 Command Line Boy, 曾经和同学一起做小组项目时,没有接触过 Git 的同学听组长教如何使用等等,但我和 Zhenyu 都从来用的都是 Git Hub 客户端,没有想过为什么鼠标点击几下就可以以可视化搞定的事,偏偏要去终端机里敲字母呢。

配置远程环境的第一步是远程终端,在 Mac 上设置好权限后,调整了路由器的转发设定并且绑定了免费的 DDNS,这样即使每次重新接入网络获取到新的 IP 地址,都可以用固定的地址连接回电脑。配置完成后我就在前往樊大叔家的公交上试了试,其实那天是和他去吃维吾尔菜,我深刻的记得电脑在客厅的桌子上合着盖子睡眠,我却在公交车上控制着。(当时还没有外置键盘,现在都有移动触控板了,呜呜)

同时还配置好了使用 TeamViewer 的远程桌面,在别人家打开 iPad 却可以直接使用自己的电脑,感觉真的很神奇。之后的半个学期出门去学校和振誉一起做作业时,都不再背电脑出门,都是用学校的电脑搭配 TeamViewer Chrome 扩展直接连接家中的 Mac。后来研究了很久远程唤醒,但最终都失败了,干脆出门前直接阻止 Mac 进入睡眠阶段,在外就可以直接连线。

注:我决定从现在开始在中文语境下叫朋友的汉字名 不要再 FAN 大叔 Zhenyu 和 Yang 了

上个学期结束后,也没有再继续纠结这个问题,毕竟并没有开始新的编程项目,网页的维护等也都是靠 WordPress 等 Web Application,直到本科最后一个学期的后半段也就是今天,重新开始用基于 Python 的 Flask 框架来写一个网页服务器的后端,这种 iPad 上就可以写好代码的事,自然不需要远程桌面来参与。还是 Git 加上 SSH 的搭配会更加顺手。

所以从今往后又要迎来命令行的噩梦,但趁这个机会明天可以去租用一台新的虚拟服务器来专门辅助 iPad 进行程序编译等,正好这学期要做的也都是和网络相关的任务,那么在新的服务器上搭建好的项目就可以直接通过互联网访问进行测试了。

确实想不到绕了这么久,还是要回归命令行的怀抱。我还清楚的记得当时使用 CentOS 搭建 VPN 时,当时很天真的想既然通过命令行管理文件如此麻烦的话,那我直接给服务器装一个 GNOME 或是 KDE 等的图形交互界面,然后通过远程桌面连接好了哈哈哈。想想看光是 GUI 所耗用的系统资源就超过了处理网络流量的全部吧。其实工作以后接触到并非自己预想中的环境,一定还是需要过硬的命令行本领,特别是操作服务器之类的吧。

好咯好咯,五点钟不早真的要去睡觉了,无论是学术还是工作以后的路都还很漫长,估计会有更多“程序员睡前夜话”的产出,还请大家多多…… 不要介意 嘻嘻

Tommy 2020年5月3日早朝 于 Waterford, WA

One thought on “程序员夜话 1: 命令行

  1. 当初没有学 Python 可现在却直接两门课都直接要去写程序 呜呜,但也算是离开自己的“舒适圈” 去尝试新事物,说得像其他语言都很会一样 呜呜

发表回复

您的电子邮箱地址不会被公开。