每个Web开发者都该了解的12条命令行
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。
原文出处:https://tutorialzine.com/2017/08/12-terminal-commands-every-web-developer-should-know
在开发者的弹药箱里,命令行是最具生产力的工具之一。掌握它们可以给你的工作流程带来非常积极的影响。因为,许多日常任务都可以用一条命令然后按回车来解决。
在本文中,我们为你准备了一系列常用命令,帮你充分利用你的终端。这其中有些命令是系统内置的,另外的一些则是需要另外安装的免费工具,不过这些免费工具是经历了时间的考验,所以你可以分分钟将他们安装完成。
curl
curl是一个发送请求的命令行工具。可使用HTTP(s)、FTP,以及一些你可能从未听过的协议发送请求。它可以下载文件,检查响应头,自由地访问远程数据。
在web开发中,curl常用于测试连接和RESTful APIs。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
curl命令可以远比上面的情况复杂。它有一大堆的选项来控制请求头、cookies、权限验证等等。你可以在这本相当棒的免费书Everything curl中读到更多。
tree
tree是一个小巧的命令行,用于可视化地展示目录里的文件结构。它递归地执行,检查嵌套的每一个层级,为所有内容绘制出格式化的树形结构。你可以用它快速浏览文件结构,定位到所需的文件。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
也有类似正则匹配的选项,用于过滤结果。
1 2 3 4 5 6 7 |
|
tmux
根据维基百科所说,tmux是一个终端复用器,翻译为人话就是说,它是一个把多给终端连接为一个终端会话的工具。
一个tmux分为3块屏的终端如下:
它让你在终端中的程序间切换,添加分屏,并讲多个终端连接到同一个会话,并使之保持同步。尤其在远程服务器上工作时,tmux特别有用,因为它允许你无需再登录即可创建新的终端标签页。
disk usage - du
du命令能生成有关文件和文件夹磁盘空间占用情况的报告。它非常易于使用,能递归地遍历每个子目录,并返回单个文件的大小。
一个du的常见用例是,你的磁盘空间不足了,而你不知道为啥。使用此命令,可快速看到每个文件夹占用了多少存储量,从而找到最占空间的那个东西。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
还有一个类似的命令行,叫做df(Disk Free)。与du相反的是,df返回的关于可用空间的许多信息。
git
Git是目前最流行的版本控制系统。 它是现代web开发所使用的最典型的工具之一,我们绝不能将它排除在本文的列表之外。
有许多关于git的第三方应用和工具,但大部分人还是倾向于使用命令行原生的git。git的命令行界面真的很强大,甚至足以处理最杂乱的项目历史。
如果你想学习关于git的更多知识,建议你查看我们的30分钟学会git的教程。
tar
tar是处理文件打包的默认Unix工具。它让你快速地把多个文件打成一个包,这样之后存储和移动它们就会很方便。
1 |
|
使用-x
选项也可以解压缩.tar
格式的包文件。
1 |
|
请注意,大多数其他格式(如.zip和.rar)无法通过tar
打开。它们需要其他命令行工具才行,比如unzip。
许多现代Unix系统上有tar
的扩展版本(比如GNU tar
),它也能进行文件压缩:
1 2 3 4 5 |
|
如果你的操作系统里没有那个版本的tar
,你可以使用gzip,zcat或者compress来减少文件存档大小。
md5sum
Unix里有几个内置的做hash运算的命令,包括md5sum,sha1sum以及其他。
这些命令行工具在编程中有各种应用,但最重要的是,它们可用于检查文件的完整性。
例如,如果您从不受信任的源下载了.iso
文件,可能里面就包含有害脚本。 你可以从中生成md5
或其他哈希,以此确保该.iso
是安全的。
1 2 3 |
|
然后,你就可以将本地生成的md5
和原始作者提供的字符串相比较(比如UbuntuHashes)。
htop
htop
是比内置的top
任务管理更强大的命令。它提供了一个高级版的接口,具有丰富的选项,用于监视和控制系统进程。
尽管运行在命令行,htop
仍支持很好的鼠标控制。这让它更加容易地在菜单间导航、选择进程,以及通过排序和过滤来组织任务。
ln
Unix中的Links就好比是Windnows里的快捷方式,它让你快速访问到某些文件。Links通过ln
命令来创建。它可以有两种类型:hard和symbolic。每种类型都有不同的属性,用于不同的事务。(了解更多)
这里有许多你可以使用Links的例子。比如,我们在桌面有一个文件夹叫做Scripts,干净地放着ix我们常用的bash脚本。每当想调用这些脚本时,我们需要这么做:
1 |
|
显然,每次输入此绝对路径,并不是很方便。相反,我们可以为Script文件夹在/usr/local/bin
下创建一个symlink,这就让在所有目录下都可以执行Scripts里的脚本了。
1 |
|
有了创建好的symlink,我们现在可以打开任一个命令行窗口,然后直接通过脚本文件名执行它:
1 |
|
ssh
使用ssh命令,用户可以快速连接到远程主机,并登录其Unix shell。 这使得我们可以方便地直接从本地计算机,向终端在服务器发出命令。
要建立连接,只需给出正确的ip地址或url。首次连接到新服务器时,将会有某种形式的身份验证。
1 |
|
如果要快速执行在服务器上的一些不需要登录的命令,你只需在url后添加命令即可。该命令将在服务器上运行,然后返回结果。
1 2 3 4 |
|
有很多ssh
可做的事情,比如创建代理和隧道,使用私钥加密你的连接,传输文件等等。你可在这个指南里读到更多。
grep
grep
是标准的Unix工具,用于在文本中查找字符串。它以文件或流作为输入,让其内容跟正则表达式做运算,并返回所有匹配的行。
需要过滤大型文件时,此命令很实用。具体来讲就是,我们可以把grep
和date
命令一起使用,用来搜索大的日志文件,并生成只包含今天错误信息的新文件。
1 2 |
|
另一个很棒的、处理字符串的命令是sed。它比grep
更强大(也更复杂),几乎可执行任何与字符串相关的任务,包括添加,删除或替换字符串。
alias
许多Unix命令,包括本文提到的一些,在向它们添加所有选项后,往往变得很长。为让它们更好记,你可以使用内置的alias
命令创建简短的别名:
1 2 3 4 5 6 7 |
|
只要保持命令窗口打开,别名就保持有效。要使其长久被记住,你可以将alias
命令添加到.bashrc
文件中。
总结
以上就是我这总结出的12个Web开发者应该了解的命令行,可能不是那么完整和全面,那么希望如果大家还了解什么命令或没有在文中提到的,也欢迎大家补充和讨论。
每个Web开发者都该了解的12条命令行相关推荐
- 每个Web开发者都应读的文章:HTML5设计原理
[url=http://www.cn-cuckoo.com/]李松峰[/url]最近翻译了两篇关于HTML5的文章,尤其是[url=http://my.opera.com/BB9z/blog/the- ...
- 6 个对所有 Web 开发者都有用的 GitHub 仓库
作者:Mehdi Aoussiad 原文:https://javascript.plainenglish.io/6-useful-github-repositories-for-all-web-dev ...
- 搞网络都应该知道的12条基本命令
1 .最基本,最常用的,测试物理网络的 ping 192.168.0.8 -t ,参数-t是等待用户去中断测试 2. 查看DNS.IP.Mac等 A.Win98:winipcfg B.Win2000以 ...
- 你需要熟练运用的12个命令行工具
摘要: 本文简要介绍了当前较为流行的12种对数据科学任务有价值的类Unix操作系统命令行工具:wget,cat,wc,head,tail,find,cut,uniq,awk,grep,sed,hist ...
- 每个Web开发者都应该知道的SOLID原则
原创: 前端之巅 前端之巅 10月20日 作者|Chidume Nnamdi 编辑|谢丽 面向对象的编程并不能防止难以理解或不可维护的程序.因此,Robert C. Martin 制定了五项指导原则, ...
- Web 设计:实现干净代码的12条定律
漂亮的代码是漂亮网站的基础,优秀的 CSS 只存在与同样优秀的 HTML 之上,干净的,语义的 HTML 代码让一个网站更健壮.本文讲述了12个实现干净 Web 设计代码的定律,适合于任何从事 Web ...
- 解决win10 安装dnw驱动,每次重启都得禁用数字签名。解决命令行操作,设置元素数据时出错。电脑关闭Secure Boot
解决win10 安装驱动,每次重启都得禁用数字签名 第一步.将电脑关闭Secure Boot 以我的华硕笔记本电脑为例: 1.重启电脑,按住 F2 进入 bios 模式.(其他电脑自行百度) 2.按 ...
- 【网站建设】Linux上安装MySQL - 12条命令搞定MySql
从零开始安装mysql数据库 : 按照该顺序执行 : a. 查看是否安装有mysql:yum list installed mysql*, 如果有先卸载掉, 然后在进行安装; b. 安装mysql客 ...
- 为Web 开发者Bug 报告和跟踪工具
软件开发生命周期中最重要的技能就是开发者如何快速和高效的跟踪代码中的错误并解决它们,这就是所谓的"调试". 这一过程最常发生在实现.测试和质量管控阶段.无论是一个小问题还是错误,w ...
最新文章
- 如何实现java虚拟机的优化_Java虚拟机JVM优化实战的过程全记录
- (一)python简单应用
- Security-OAuth2.0 密码模式之客户端实现
- COGS-930-找第k小的数-HNOI2012-主席树
- Ansible 快速入门
- java中io流如何创建一个文件_,Java中Io流操作-File类的常用操作-创建文件,创建文件夹...
- 传统白板行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
- 绝对定向 c++_【007】Linux重定向、管道符及环境变量(看这一文就够了)
- [2018.10.10 T2] 烯烃
- 蚂蚁课堂视频笔记思维导图-3期 四、源码分析
- Kafka下载安装及部署
- 校园网认证破解教程(广某大学)
- 微软语音合成助手 v1.5.1 文本转语音工具,真实语音AI生成器
- 正则表达式——特殊字符(MyBatis)
- 收藏|史上最全的30个生物实验技术及原理
- 品荔枝赏文化,美丽乡村不一样的嘉年华
- Unity-Spine换装问题
- Silicon单片机芯片解密
- 新能源车车牌识别c++
- python indexerror out of bound_用Pyinstaller打包时出现IndexError怎么回事?
热门文章
- RFID车辆管理系统
- 公众号排名被动引流 I 关键词的初始排名,认证与不认证公众号区别有多大?
- 2022年,保研大数据方向推荐吗?
- 可以跨专业保研计算机吗,保研夏令营能跨专业吗?各位前辈,有没有跨专业保研的途径...
- leetcode总结-回文串,回文序列
- 【Android】【机型适配】解决Android10有文件权限但无法访问文件的问题
- Retrofit 协程 下载
- 基于python的pulp库使用,从基础模型到复杂模型,从一维变量到二维变量
- Nginx日志配置经验分享
- excel一列求和_Excel超实用小技巧:快速求和和对齐,一秒搞定