当前位置: 首页 > 科技观察

作为Web前端开发者,这12条基本命令缺一不可

时间:2023-03-13 00:18:58 科技观察

对于开发者来说,终端是最重要的工具之一。掌握终端可以有效改善开发人员的工作流程。使用终端,许多日常任务都简化为编写简单的命令和按下Enter按钮。本文列出了一系列旨在帮助您充分利用终端工具的Linux命令。其中一些终端命令是内置的,另一些是免费工具,经测试可在一分钟内完成安装。CurlCurl是一个命令行工具,用于通过HTTP(s)、FTP和许多其他协议发出请求。使用Curl执行文件下载、检查响应标头以及自由访问远程数据。在Web开发中,Curl通常与RESTfulAPI一起使用来测试连接。#FetchtheheadersofaURL.curl-Ihttp://google.comHTTP/1.1302FoundCache-Control:privateContent-Type:text/html;charset=UTF-8Referrer-Policy:no-referrerLocation:http://www.google.com/?gfe_rd=cr&ei=0fCKWe6HCZTd8AfCoIWYBQContent-Length:258Date:Wed,09Aug201711:24:01GMT#MakeaGETrequesttoaremoteAPI.curlhttp://numbersapi.com/random/trivia29isthenumberofdaysittakesSaturntoorbittheSun.Curl命令可能比上面的代码更复杂。有许多选项可用于控制标头、cookie、身份验证等。要了解更多信息,请阅读Everythingcurl。TreeTree是一个小型命令行实用程序,可将目录中的文件可视化。它以递归方式运行,遍历每个嵌套级别并绘制所有内容的格式树。这样,您可以快速浏览并找到所需的文件。树.├──css│├──bootstrap.css│├──bootstrap.min.css├──字体│├──glyphicons-halflings-regular.eot│├──glyphicons-halflings-regular.svg│├──glyphicons-halflings-regular.ttf│├──glyphicons-halflings-regular.woff│└──glyphicons-halflings-regular.woff2└──js├──bootstrap.js└──bootstrap.min.js也可以使用简单的正则表达式模式来过滤结果:tree-P'*.min.*'.├──css│├──bootstrap.min.css├──fonts└──js└──bootstrap.min.jsTmux根据wiki,Tmux是一个终端多路复用器。通俗地说,它是一个可以将多个终端连接到单个终端会话的工具。Tmux允许用户在终端中的程序之间切换,添加屏幕窗格,以及将多个终端连接到同一个会话,使它们保持同步。Tmux在远程服务器上工作时特别有用,因为它允许用户创建新选项卡而无需再次登录。dudu命令用于生成有关文件和目录的空间使用情况的报告。du易于使用并且可以递归运行,遍历每个子目录并返回每个文件的大小。du的一个常见用例是当驱动器空间不足并且用户不知道每个内存的大小时。使用该命令可以快速查看各个文件夹占用的存储空间,从而找到占用空间最多的存储。#Runningthiswillshowthespaceusageofeachfolderinthecurrentdirectory.#The-hoptionmakesthereporteasiertoread.#-spreventsrecursivenessandshowsthetotalsizeofafolder.#Thestarwildcard(*)willrunduoneachfile/folderincurrentdirectory.du-sh*1.2GDesktop4.0KDocuments40GDownloads4.0KMusic4.9MPictures844KPublic4.0KTemplates6.9MVideos还有一个相似的命令df(DiskFree),使用df返回有关可用磁盘空间的各种信息。GitGit是迄今为止最先进的版本控制系统,也是现代Web开发的定义工具之一。有许多适用于Git的第三方应用程序和工具,但大多数人更喜欢通过本地终端访问git。gitCLI的功能强大到足以处理最混乱的项目版本控制问题。想深入了解git,推荐学习《30分钟学Git》。TarTar是默认的Unix文件归档工具。Tar允许用户将多个文件快速捆绑到一个包中,使其更易于存储和移动。tar-cfarchive.tarfile1file2file3也可以使用-x选项提取现有的.tar存档。tar-xfarchive.tar请注意,大多数其他格式(如.zip和.rar)无法使用tar命令打开。要打开.zip和.rar等文件,您需要使用unzip等命令。许多现代Unix系统运行扩展版本的tar(GNUtar),它可以帮助压缩可执行文件的大小:#Createcompressedgziparchive.tar-czffile.tar.gzinputfile1inputfile2#Extract.gzarchive.tar-xzffile.tar.gz如果您的操作如果您的系统没有此版本的tar,您可以使用gzip、zcat或compress来减小存档的大小。md5sumUnix内置了几个哈希命令,包括md5sum、sha1sum等。这些命令行工具在编程中有很多应用,但最重要的功能是可以用来检查文件的完整性。例如,如果.iso文件是从不受信任的来源下载的,它可能包含有害脚本。为了确保.iso是安全的,用户可以从中生成md5或其他哈希。md5sumubuntu-16.04.3-desktop-amd64.iso0d9fe8e1ea408a5895cbbe3431989295ubuntu-16.04.3-desktop-amd64.iso然后可以将生成的字符串与原作者提供的字符串(例如UbuntuHashes)进行比较。HtopHtop是在任务管理器中创建顶级任务的强大替代方案。它提供了一个高级界面,其中包含许多用于监视和控制系统进程的选项。虽然Htop在终端中运行,但Htop对鼠标控制有很好的支持。这也使得完成导航菜单、选择进程以及组织排序和过滤等任务变得更加容易。LnUnix中的链接类似于Windows中的快捷方式,允许用户快速访问某些文件。链接是使用ln命令创建的,有两种类型:硬链接或符号链接。每个都有不同的属性,用于不同的对象。下面是一个使用链接的例子。假设您的桌面上有一个名为Scripts的目录。它包含我们通常使用的bash脚本。每当我们要调用其中一个脚本时,我们必须这样做:~/Desktop/Scr??ipts/git-scripts/git-cleanup这显然很不方便,因为我们每次都必须写绝对路径。相反,我们可以创建一个从脚本文件夹到/usr/local/bin的符号链接,这将使脚本更容易执行。sudoln-s~/Desktop/Scr??ipts/git-scripts/git-cleanup/usr/local/bin/通过创建一个符号链接,脚本可以在任何打开的终端中通过简单地写入它的名字来调用。git-cleanupSSH使用ssh命令,用户可以快速连接到远程主机并登录到他们的Unixshell。这也使得用户可以直接从本地机器的终端操作远程服务器,更容易发出命令。要建立连接,只需指定正确的IP地址或URL。第一次连接到新服务器时,会有某种形式的身份验证。如果你想在不登录的情况下快速在服务器上执行命令,你可以在URL后面添加一个命令sshusername@remote_host。该命令将在服务器上运行并返回此结果。sshusername@remote_hostls/var/wwwsome-website.comsome-other-website.com您可以使用SSH做很多事情,例如创建代理和隧道、使用私钥安全连接、传输文件等等。了解有关ssh的更多信息。GrepGrep是一个标准的Unix实用程序,用于在文本中查找字符串。Grep将输入作为文件或直接流,通过正则表达式运行其内容,并返回所有匹配行。在过滤大文件时,使用Grep会非常方便。下面我们使用Grep和data命令搜索一个大日志文件并生成一个仅包含当天错误消息的新文件。//Searchfortoday'sdate(informatyyyy-mm-dd)andwritetheresultstoanewfile.grep"$(date+"%Y-%m-%d")"all-errors-ever.log>today-errors.log另一种处理字符串很强大命令是sed,它比grep更强大和复杂,它几乎可以执行与字符串相关的任何任务,包括添加、删除或替换字符串。Alias很多Unix命令,包括本文中的一些函数,加上所有选项后会是一长串命令。为了让这些很长的命令更容易记住,用户可以使用别名命令来创建短别名:#Createanaliasforstartingalocalwebserver.aliasserver="python-mSimpleHTTPServer9000"#Insteadoftypingthewholecommandsimplyusethealias.serverServingHTTPon0.0.0.0port9000...只要保持终端打开,别名将永远可用。要使别名可用,还要将alias命令添加到.bashrc文件中。前端开发工具推荐SpreadJS纯前端表格控件是一个基于HTML5的Java电子表格和网格功能控件,提供完整的公式引擎,排序、过滤、输入控件、数据可视化、Excel导入/导出等功能,适合.NETTable程序开发,用于.、Java、移动端等各种平台在线编辑类Excel功能。小结对于Web开发者来说,如果以上12个终端命令中有你不熟悉的命令,那么你应该通过本文快速熟悉它们,并逐步将它们应用到你自己的开发工作中。