自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

系統(tǒng) Linux 開發(fā)工具
默認(rèn)情況下,每個基于Linux或Mac的操作系統(tǒng)都安裝了一個命令行程序,通常以" Terminal"為名稱。命令行(CLI)使我們可以輕松地移動和重命名文件,對數(shù)據(jù)進行排序以及在計算機中瀏覽。

命令行使我們的生活變得更加輕松,因為我們可以自動化一些平凡的任務(wù)并使事情運行更順暢。 無需單擊圖形用戶界面(GUI),我們可以觸發(fā)一些命令并將其稱為完成工作。

Unix shell是命令行解釋器或shell,可為類似Unix的操作系統(tǒng)提供命令行用戶界面。 Shell程序既是交互式命令語言又是腳本語言,并且操作系統(tǒng)使用它來控制系統(tǒng)的執(zhí)行。

默認(rèn)情況下,每個基于Linux或Mac的操作系統(tǒng)都安裝了一個命令行程序,通常以" Terminal"為名稱。命令行(CLI)使我們可以輕松地移動和重命名文件,對數(shù)據(jù)進行排序以及在計算機中瀏覽。

事不宜遲,這里有11個命令行技巧,可以使您的生活更輕松。

1. grep

  1. $ grep "some string" file 

grep命令在每個文件中搜索模式。 它還會尋找由換行符分隔的模式,并且grep打印與模式匹配的每一行。

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Using the grep command to find all React keywords in a file

-i選項使我們能夠在給定文件中區(qū)分大小寫地搜索字符串。 它匹配" REACT"," REact"和" react"之類的詞。

  1. $ grep -i "REact" file 

我們可以使用-c(count)標(biāo)志找到與給定字符串/模式匹配的行數(shù)。

  1. $ grep -c "react" index.js 

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Counting the times the word "react" pops up in a life

這是我在互聯(lián)網(wǎng)上找到的有關(guān)grep命令的有趣且具有教育意義的漫畫。

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Source: Wizard Zines

此外,變體程序egrep和fgrep分別與grep -E和grep -F相同。 不建議使用這些變體,但提供這些變體是為了向后兼容。

您可以使用grep做很多事情-在此處閱讀文檔以進行深入研究。

2. ls

  1. $ ls 

ls列出當(dāng)前活動路徑中的文件和目錄。 如果路徑名是文件,則ls根據(jù)請求的選項顯示有關(guān)文件的信息。 如果路徑名是目錄,則ls顯示有關(guān)文件和其中的子目錄的信息。

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Using the ls command to show all files in the current directory

您可能已經(jīng)注意到文件顯示為灰色,而文件夾為藍(lán)色。 這是為了幫助我們區(qū)分文件夾和文件。

3. pwd

  1. $ pwd 

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Printing out the current working directory (pwd)

pwd命令是用于打印當(dāng)前工作目錄的命令行實用程序。 輸出會將當(dāng)前工作目錄的完整系統(tǒng)路徑打印到標(biāo)準(zhǔn)輸出。 默認(rèn)情況下,pwd命令會忽略符號鏈接,盡管可以使用選項顯示當(dāng)前目錄的完整物理路徑。

4. Cat

  1. $ cat somefile.js 

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Displaying content of a file with cat

cat命令具有與文本文件有關(guān)的三個相關(guān)功能:

  • 顯示它們
  • 合并副本
  • 創(chuàng)造新的

cat的最常見用法是讀取文件的內(nèi)容,而cat通常是用于此目的的最方便的程序。

在以下示例中,使用輸出重定向運算符(由向右指向的尖括號表示)將cat的標(biāo)準(zhǔn)輸出重定向到file2:

  1. $ cat somefile > somefile2 

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Creating files with cat

5. echo

  1. $ echo "some text" 

Linux中的echo命令用于顯示作為參數(shù)傳遞的一行文本/字符串。 echo是一個內(nèi)置命令,主要用于shell腳本和批處理文件中,以將狀態(tài)文本輸出到屏幕或文件中。

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

6. touch

  1. $ touch somefile 

touch命令用于創(chuàng)建不包含任何內(nèi)容的文件。 當(dāng)用戶在創(chuàng)建文件時沒有要存儲的數(shù)據(jù)時,可以使用touch命令。

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Creating a new file with touch

請注意,我們是如何通過觸摸來創(chuàng)建文件的,如何使用cat來查看文件的內(nèi)部。 由于新創(chuàng)建的index2.js文件為空,因此cat不返回任何內(nèi)容。

以下是cat和touch之間的主要區(qū)別:

  • cat-用于創(chuàng)建包含內(nèi)容的文件。
  • 觸摸—創(chuàng)建一個沒有任何內(nèi)容或空文件的文件。 請記住,使用touch命令創(chuàng)建的文件為空。 當(dāng)用戶在創(chuàng)建文件時沒有要存儲的數(shù)據(jù)時,此命令很有用。

7. mkdir

  1. $ mkdir some-directory 

如您所料,mkdir在當(dāng)前活動路徑中創(chuàng)建一個新的空目錄。 而不是在文本編輯器或GUI中單擊,而使用此命令來創(chuàng)建新文件夾。

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Creating a new directory with mkdir

注意:請注意我們?nèi)绾问褂们懊娴膌s命令監(jiān)視目錄。

(1) rm

  1. $ rm someFile 

rm代表remove,它完全按照它說的去做。 刪除,或換句話說,刪除文件。

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Removing a file with the rm command

默認(rèn)情況下,rm命令不會刪除目錄。 您需要傳遞-rf標(biāo)志以刪除目錄。

  1. $ rm -rf some-directory 

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Removing a directory with the rm command (notice we're passing the flag to remove a directory)

注意:無論目錄內(nèi)部是否包含內(nèi)容,這都會無條件刪除目錄。

(2) 均方根

  1. $ rmdir some-directory 

如果目錄中沒有內(nèi)容,則rmdir命令將刪除目錄。

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Removing an empty directory with rmdir

8. tail

  1. $ tail somefile 

tail命令讀取文件并輸出文件的最后部分(" tail")。

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Output the last num lines, instead of the default (10)

在查看崩潰報告或以前的歷史記錄日志時,tail命令很有用。 這是處理文件日志時有用的示例。

  1. # tail /var/log/messages 
  2. Mar 20 12:42:22 hameda1d1c dhclient[4334]: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x280436dd
  3. Mar 20 12:42:24 hameda1d1c avahi-daemon[2027]: Registering new address record for fe80::4639:c4ff:fe53:4908 on eth0.*. 
  4. Mar 20 12:42:28 hameda1d1c dhclient[4334]: DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x280436dd
  5. Mar 20 12:42:28 hameda1d1c dhclient[4334]: DHCPACK from 10.76.198.1 (xid=0x280436dd)Mar 20 12:42:30 hameda1d1c avahi-daemon[2027]: Joining mDNS multicast group on interface eth0.IPv4 with address 10.76.199.87. 
  6. Mar 20 12:42:30 hameda1d1c avahi-daemon[2027]: New relevant interface eth0.IPv4 for mDNS. 
  7. Mar 20 12:42:30 hameda1d1c avahi-daemon[2027]: Registering new address record for 10.76.199.87 on eth0.IPv4. 
  8. Mar 20 12:42:30 hameda1d1c NET[4385]: /sbin/dhclient-script : updated /etc/resolv.conf 
  9. Mar 20 12:42:30 hameda1d1c dhclient[4334]: bound to 10.76.199.87 -- renewal in 74685 seconds. 
  10. Mar 20 12:45:39 hameda1d1c kernel: usb 3-7: USB disconnect, device number 2 

9. wget

  1. $ wget someurl 

GNU Wget是一個免費軟件包,可使用HTTP,HTTPS,F(xiàn)TP和FTPS(使用最廣泛的Internet協(xié)議)檢索文件。 這是一種非交互式的命令行工具,因此可以輕松地從腳本,CRON作業(yè),不支持X-Windows的終端等中調(diào)用。

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

get to fetch information about a webpage

GNU Wget具有許多使檢索大型文件或鏡像整個Web或FTP站點變得容易的功能,包括:

  • 可以使用REST和RANGE恢復(fù)中止的下載
  • 可以使用文件名通配符并遞歸鏡像目錄
  • 基于NLS的消息文件,適用于多種語言
  • (可選)將下載的文檔中的絕對鏈接轉(zhuǎn)換為相對鏈接,以便下載的文檔可以在本地彼此鏈接
  • 在大多數(shù)類似UNIX的操作系統(tǒng)以及Microsoft Windows上運行
  • 支持HTTP代理
  • 支持HTTP cookie
  • 支持持久的HTTP連接
  • 無人值守/后臺操作
  • 使用本地文件時間戳確定鏡像時是否需要重新下載文檔
  • GNU Wget是根據(jù)GNU通用公共許可證發(fā)行的。

10. find

  1. $ find path -name filename 

使用find命令可以快速查找文件或目錄。 當(dāng)您正在處理包含數(shù)百個文件和多個目錄的大型項目時,此功能非常有用。

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Finding all files with the name of index.js

搜索特定類型的文件

使用find命令還可以在目錄(及其子目錄)中搜索相同類型的文件。 例如,以下命令將搜索當(dāng)前工作目錄中的所有.js文件。

  1. $ find . -name "*.js" 

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Finding all .js files in the components directory

11. MV

  1. $ mv somefile /to/some/other/path 

mv命令將文件或目錄從一個位置移動到另一個位置。 mv命令支持移動單個文件,多個文件和目錄。

每個開發(fā)人員都應(yīng)該知道的11個控制臺命令

Moving the some-directory from components to utils directory

責(zé)任編輯:趙寧寧 來源: 今日頭條
相關(guān)推薦

2023-03-08 15:13:32

Git工具開發(fā)

2013-01-28 10:25:46

開發(fā)人員設(shè)計技巧

2024-06-04 14:31:16

2020-01-27 16:28:57

開發(fā)命令遠(yuǎn)程服務(wù)器

2024-10-21 13:15:03

2021-02-05 12:58:18

開發(fā)人員CICD

2024-06-03 10:35:41

2024-10-28 16:06:50

2023-07-11 16:45:32

VS Code開發(fā)技巧

2022-02-21 00:11:24

Java工具開發(fā)

2023-02-08 08:32:58

2020-10-13 18:20:55

TCPHTTP網(wǎng)絡(luò)協(xié)議

2023-10-26 16:56:24

2020-09-22 12:19:25

JavaGithub倉庫

2023-01-12 08:33:06

2022-05-09 07:40:16

WebCSS前端

2022-10-13 15:19:33

JavaScript開發(fā)編程語言

2022-12-16 08:14:00

2024-01-24 08:00:00

2017-10-11 13:20:56

Linux命令工程師
點贊
收藏

51CTO技術(shù)棧公眾號