作為前端Web開發者,這12條基本命令不可不會

編程語言 Git 腳本語言 Tmux 葡萄城控件 葡萄城控件 2017-10-19

作為前端Web開發者,這12條基本命令不可不會

對於開發人員來說,終端是最重要的工具之一。掌握終端,能夠有效的提升開發人員的工作流程。使用終端,許多日常任務都被簡化為了編寫簡單的命令並按下 Enter 按鈕。

本文列舉了一系列 Linux 命令,旨在幫助大家充分利用終端這個工具。其中一些終端命令是內置的,其它的則是免費的工具,並且經過測試這些工具可以在不到一分鐘內進行安裝。

Curl

Curl 是一個命令行工具,用於通過 HTTP(s)、FTP 和數十種其它協議進行請求。使用Curl可以進行文件下載、檢查響應標題和自由訪問遠程數據。

在 Web 開發中,Curl 經常和 RESTful API 一起使用,用於測試連接。

# Fetch the headers of a URL.curl -I http://google.comHTTP/1.1 302 FoundCache-Control: privateContent-Type: text/html; charset=UTF-8Referrer-Policy: no-referrerLocation: http://www.google.com/?gfe_rd=cr&ei=0fCKWe6HCZTd8AfCoIWYBQContent-Length: 258Date: Wed, 09 Aug 2017 11:24:01 GMT# Make a GET request to a remote API.curl http://numbersapi.com/random/trivia29 is the number of days it takes Saturn to orbit the Sun.

Curl 命令可能比上述代碼更復雜。有許多選項用於控制 headers、Cookie、身份驗證等。瞭解更多,請閱讀Everything curl。

Tree

Tree 是一個小型的命令行實用程序,它將目錄中的文件以可視化的方式進行顯示。它採用遞歸運行的方式,遍歷每個級別的嵌套並繪製所有內容的格式樹。這樣就能快速的瀏覽並查找需要的文件。

tree.├── css│ ├── bootstrap.css│ ├── bootstrap.min.css├── fonts│ ├── 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

還可以使用簡單的 regEx 模式來過濾結果:

tree -P '*.min.*'.├── css│ ├── bootstrap.min.css├── fonts└── js └── bootstrap.min.js

Tmux

根據維基的解釋,Tmux 是一個終端複用器。通俗的說,它是一個能將多個終端連接到單個終端會話的工具。

作為前端Web開發者,這12條基本命令不可不會

Tmux 允許用戶在終端中的程序之間切換,添加屏幕窗格,並將多個終端連接到同一個會話,使其保持同步。在遠程服務器上工作時,Tmux 特別有用,因為它允許用戶創建新的選項卡,而無需再次登錄。

du

du 命令用於生成關於文件和目錄的空間使用情況的報告。du很容易使用,可以遞歸地運行,遍歷每個子目錄並返回每個文件的大小。

du 的常見用例是:當某個驅動器的空間不足,用戶不清楚每個存儲器的大小。使用此命令可以快速查看每個文件夾所佔用的存儲空間,從而找到佔用最大空間的存儲器。

# Running this will show the space usage of each folder in the current directory.# The -h option makes the report easier to read.# -s prevents recursiveness and shows the total size of a folder.# The star wildcard (*) will run du on each file/folder in current directory.du -sh *1.2G Desktop4.0K Documents40G Downloads4.0K Music4.9M Pictures844K Public4.0K Templates6.9M Videos

還有一個相似的命令 df(Disk Free),使用df會返回有關可用磁盤空間的各種信息。

Git

Git 是迄今為止最流行的版本控制系統,也是現代 web 開發的定義工具之一。

Git 有很多第三方應用和工具可以使用,但是大多數人都喜歡通過本地終端訪問 git。git CLI 非常強大,可以處理最混亂的項目版本問題。

想了解更多關於 git 的信息,推薦學習“ Learn Git in 30 Minutes”。

Tar

Tar 是用於文件存檔的默認 Unix 工具。Tar 允許用戶將多個文件快速綁定到一個包中,從而使之更容易存儲和移動。

tar -cf archive.tar file1 file2 file3

使用-x選項也可以提取現有的 .tar 檔案。

tar -xf archive.tar

請注意,其它大多數格式如 .zip 和 .rar 無法使用 tar 命令打開,要打開 .zip 和 .rar 這樣的文件還需要 unzip 這樣的命令。

許多現代 Unix 系統都在運行擴展版本的 tar(GNU tar),可以幫助壓縮執行文件的大小:

# Create compressed gzip archive.tar -czf file.tar.gz inputfile1 inputfile2# Extract .gz archive.tar -xzf file.tar.gz

如果你的操作系統沒有該版本的 tar,則可以使用 gzip,zcat 或 compress 來壓縮歸檔文件的大小。

md5sum

Unix 有幾個內置的哈希命令,包括 md5sum,sha1sum 等。這些命令行工具在編程中有很多種應用,但是最重要的功能是它們可以用於檢查文件的完整性。

例如,如果從不受信任的源下載了 .iso 文件,那麼該文件就有可能包含有害的腳本。為了確保 .iso 是安全的,用戶可以從中生成 md5 或其它哈希。

md5sum ubuntu-16.04.3-desktop-amd64.iso0d9fe8e1ea408a5895cbbe3431989295 ubuntu-16.04.3-desktop-amd64.iso

然後,可以將生成的字符串與原作者提供的字符串(例如UbuntuHashes)進行比較。

Htop

Htop 是創建任務管理器中 top 任務的一個很強大的可選方案。它提供了一個高級界面,具有用於監視和控制系統進程的許多選項。

作為前端Web開發者,這12條基本命令不可不會

雖然 Htop 在終端中運行,但是 Htop 對鼠標控件有非常好的支持。這也使得能夠更容易地完成導航菜單,選擇進程,並組織排序和過濾的任務。

Ln

Unix 中的 Links 類似於 Windows 中的快捷方式,允許用戶快速訪問某些文件。Links是通過ln命令創建的,有兩種類型:hard 或 symbolic。每種都有不同的屬性,分別用於不同的對象。

以下是使用鏈接的示例。假設桌面上有一個名為 Scripts 的目錄。它包含了我們通常使用的 bash 腳本。每當我們想要調用腳本之一時,都必須這樣做:

~/Desktop/Scripts/git-scripts/git-cleanup

這樣顯然很不方便,因為每次都要寫絕對路徑。相反,我們可以創建一個從腳本文件夾到 /usr/local/bin 的符號鏈接,這樣會使腳本更容易執行。

sudo ln -s ~/Desktop/Scripts/git-scripts/git-cleanup /usr/local/bin/

通過創建符號鏈接,就可以在任何打開的終端中,通過簡單地寫入名稱來調用腳本。

git-cleanup

SSH

使用 ssh 命令,用戶可以快速連接到遠程主機並登錄到其 Unix shell。這也讓用戶可以直接從本地機器的終端操作遠程的服務器,更方便地發出命令。

要建立連接,只需要指定正確的 IP 地址或 URL。第一次連接到新服務器時,會有一些形式的身份驗證。

ssh username@remote_host

如果要在服務器上快速執行命令而不進行登錄,可以在URL之後添加一個命令。該命令將在服務器上運行,並返回該結果。

ssh username@remote_host ls /var/wwwsome-website.comsome-other-website.com

可以使用 SSH 做很多事情,例如創建代理和隧道、使用私鑰保護連接、傳輸文件等等。瞭解更多有關ssh。

Grep

Grep 是一個用於在文本中查找字符串的標準 Unix 實用程序。Grep 以文件或直接流的形式進行輸入,通過正則表達式運行其內容,並返回所有匹配的行。

在對大文件進行過濾時,使用 Grep 會非常方便。下面我們使用 Grep 和 data 命令搜索來對一個大型日誌文件進行搜索,並生成一個僅包含當天錯誤信息的新文件。

// Search for today's date (in format yyyy-mm-dd) and write the results to a new file. grep "$(date +"%Y-%m-%d")" all-errors-ever.log > today-errors.log

處理字符串的另一個很強大的命令是 sed,它比 grep 更強大也更復雜,它可以執行幾乎任何與字符串相關的任務,包括添加、刪除或替換字符串。

Alias

許多 Unix 命令,包括本文中的一些功能,在添加所有的選項後,會是一個很長串的命令。為了使這些很長串的命令更容易記憶,用戶可以使用alias 命令來創建簡短的別名:

# Create an alias for starting a local web server.alias server="python -m SimpleHTTPServer 9000"# Instead of typing the whole command simply use the alias.serverServing HTTP on 0.0.0.0 port 9000 ...

只要保持終端處於開啟狀態,該別名將一直可用。為了使別名永久可用,也可以將 alias 命令添加到 .bashrc 文件中。

前端開發工具推薦

SpreadJS 純前端表格控件是基於 HTML5 的 Java 電子表格和網格功能控件,提供了完備的公式引擎、排序、過濾、輸入控件、數據可視化、Excel 導入/導出等功能,適用於 .NET、Java 和移動端等各平臺在線編輯類 Excel 功能的表格程序開發。

總結

對於 Web 開發人員來說,如果上述的12個終端命令中,還有你不熟悉的命令,那麼就應該通過本文快速的熟悉起來,並逐漸的運用到自己的開發工作中。

原文鏈接:https://tutorialzine.com/2017/08/12-terminal-commands-every-web-developer-should-know

轉載請註明出自:葡萄城控件

關於葡萄城

葡萄城成立於1980年,是全球最大的控件提供商,世界領先的企業應用定製工具、企業報表和商業智能解決方案提供商,為超過75%的全球財富500強企業提供服務。葡萄城於1988年在中國設立研發中心,在全球化產品的研發過程中,不斷適應中國市場的本地需求,併為軟件企業和各行業的信息化提供優秀的軟件工具和諮詢服務。

相關推薦

推薦中...