前端工程师需要对 Linux 掌握到什么程度?

面试的时候,被问到对 Linux 掌握的如何。我只会简单的使用一下,当时一紧张连怎么解压缩都没答上了。 用 Linux 不是不能装 IE 吗?这样在做…
关注者
109
被浏览
79,463
登录后你可以
不限量看优质回答私信答主深度交流精彩内容一键收藏

前端工程师需要对Linux掌握到什么程度?

我的回答是:前端切图仔根本就不需要掌握Linux,但合格的前端工程师是需要掌握一些必要的Linux命令的!

如果你甘心一直当一个只会切图做静态页面的切图仔,ok,那后台逻辑、服务器、运维、系统性能优化相关的你统统都不用操心了,你只需要做好你的页面,给后端大佬打好下手即可。

但题主问的是“前端工程师”,而不是切图仔。工程师是为解决问题而生的,如果你单单做个静态页面,你觉得你解决了什么问题?展示作用?炫酷动画?还是啥...

如果你还称自己为前端工程师的话,或者你励志要向大前端发展,你势必就会碰到一些服务器、运维相关的知识。你们公司也不可能永远只让前端做个静态页面吧,如果哪天你们要改用服务器渲染,或者是由于项目需求短小精悍准备直接用node做同构直出,那你觉得你们项目部署到服务器的过程或者部署之后的维护工作要交给后端同事吗?

就算你低得下姿态让后端同事协助一下,但一次两次可以,你次次都找别人别人心里肯定有个“MMP”想要讲的:又不是我的项目,次次都找我,管我鸟事哟!(此处根据日常工作场景设想)

这时候你不考虑自己动手弄一下?你自己做好的项目,现在部署到服务器上去,你还能不进入服务器操作吗?一旦进入服务器,你基本就进入了linux的世界了。没办法,地球上99%的服务器都是Linux......

所以这么看,Linux命令是逃不掉的。既然我们要成为一名合格的前端工程师,甚至是一名大前端,我们逃不掉Linux命令,那不如欣然接受。因为当你实际操作过服务器之后,你会发现其实并不难,只需要记一些Linux基本命令,其他的熟能生巧,不记得查就可以(毕竟我们既不是专业运维,也不是专职服务器开发)。

下面是我常用的Linux命令(同为一名菜鸟前端,以供大家参考):

  1. whoami 查看当前用户名
  2. which nginx 查看nginx等用户安装程序、命令的位置及是否存在
  3. whereis cat 查看cat等系统程序、命令的位置及是否存在
  4. pwd 查看当前文件夹完整路径
  5. mv a b 将文件 a 重命名为 b
  6. cp a b 将文件 a 复制一份命名为 b
  7. du -h --max-depth=1 查看文件内存(mac:du -shc *)
  8. netstat -ntpl 查看本机所有端口进程
  9. telnet ip port 测试远程主机端口连通性
  10. tar -zcvf dist.tar.gz dist 当前文件夹下压缩dist
  11. ps aux | grep node 查看node进程
  12. kill -9 20713 杀掉20713进程
  13. tail -f filename 始终显示文件名为filename里最尾部的内容,并且不断刷新
  14. tail -n 10 filename 显示文件名为filename里最新的最后10行内容
  15. ssh -p 2222 user@host 使用user用户登录host主机的2222端口
  16. su admin 当前用户切成admin(sudo类似)
  17. scp -P 9527 user@ip:/path/dist ./ 使用user用户身份,将地址为ip的主机下path目录里的dist发送到当前目录下
  18. sz dist 下载dist文件(rz上传)
  19. open filename 使用系统默认的程序打开filename文件
  20. find -name test.txt(find <指定目录> <指定条件> <指定动作>)
  21. locate test.txt 在系统后台数据库中按文件名搜索test.txt的完整路径(有坑,依赖于/var/db/locate.database 是否存在)
  22. curl 127.0.0.1:3000 在本服务器上访问起的3000端口服务(wget 跟 curl 类似)
  23. top 命令式系统性能分析工具,作用跟Windows任务管理器和 Mac 活动监视器差不多
  24. host DNS查询工具(nslookup / dig查的信息比 host 更加完整)
  25. history 查看最近使用的命令行历史记录
  26. vim/vi [filename]、wq 和 q! 在命令行编辑一个文件,并保存退出/不保存退出
  27. cat filename 在命令行打印出一个文件内容
  28. ls | grep *.js 筛选出当前文件夹所有的 js后缀名的文件(| 是管道操作符,grep 是过滤操作符)
  29. lsof -i tcp:8080 快速找到 8080 端口的进程号(解决端口占用问题)

身为前端,大部分工作肯定不是在服务器端(但玩 ITerm2 终端也少不了)。所以对于 Linux 不必深究,了解这么多常用的基本命令即可。有需要又总是不大记得这些的,我这里给大家整理了一下我常用的。(另外觉得我这些不够满足的,推荐 Linux大学

码字不易,希望可以帮大家提升一点前端方面的认知。

编辑于 2022-09-30 15:31・IP 属地广东