今天,我偶然發(fā)現(xiàn)了一組適用于命令行重度用戶的實(shí)用 BASH 腳本,這些腳本被稱為Bash-Snippets,它們對(duì)于那些整天都與終端打交道的人來(lái)說(shuō)可能會(huì)很有幫助。想要查看你居住地的天氣情況?它為你做了。想知道股票價(jià)格?你可以運(yùn)行顯示股票當(dāng)前詳細(xì)信息的腳本。覺(jué)得無(wú)聊?你可以看一些 YouTube 視頻。這些全部在命令行中完成,你無(wú)需安裝任何嚴(yán)重消耗內(nèi)存的 GUI 應(yīng)用程序。
在撰寫本文時(shí),Bash-Snippets 提供以下 19 個(gè)實(shí)用工具:
Cheat– Linux 命令備忘單。
Cloudup– 一個(gè)將 GitHub 倉(cāng)庫(kù)備份到 bitbucket 的工具。
Crypt– 加解密文件。
Cryptocurrency– 前 10 大加密貨幣的實(shí)時(shí)匯率轉(zhuǎn)換。
Currency– 貨幣轉(zhuǎn)換器。
Geo– 提供 wan、lan、router、dns、mac 和 ip 的詳細(xì)信息。
Lyrics– 從命令行快速獲取給定歌曲的歌詞。
Meme– 創(chuàng)造命令行表情包。
Movies– 搜索并顯示電影詳情。
Newton– 執(zhí)行數(shù)值計(jì)算一直到符號(hào)數(shù)學(xué)解析。(to 校正:這里不理解)
Qrify– 將給定的字符串轉(zhuǎn)換為二維碼。
Short– 縮短 URL
Siteciphers– 檢查給定 https 站點(diǎn)啟用或禁用的密碼。
Stocks– 提供某些股票的詳細(xì)信息。
Taste– 推薦引擎提供三個(gè)類似的項(xiàng)目,如提供物品(如書(shū)籍、音樂(lè)、藝術(shù)家、電影和游戲等。)
Todo– 命令行待辦事項(xiàng)管理。
Transfer– 從命令行快速傳輸文件。
Weather– 顯示你所在地的天氣詳情。
Youtube-Viewer– 從終端觀看 YouTube 視頻。
作者可能會(huì)在將來(lái)添加更多實(shí)用程序和/或功能,因此我建議你密切關(guān)注該項(xiàng)目的網(wǎng)站或 GitHub 頁(yè)面以供將來(lái)更新。
安裝
你可以在任何支持 BASH 的操作系統(tǒng)上安裝這些腳本。
首先,克隆 git 倉(cāng)庫(kù),使用以下命令:
$ git clone https://github.com/alexanderepstein/Bash-Snippets
進(jìn)入目錄:
$ cd Bash-Snippets/
切換到最新的穩(wěn)定版本:
$ git checkout v1.22.0
最后,使用以下命令安裝 Bash-Snippets:
$ sudo ./install.sh
這將詢問(wèn)你要安裝哪些腳本。只需輸入 Y 并按回車鍵即可安裝相應(yīng)的腳本。如果你不想安裝某些特定腳本,輸入 N 并按回車鍵。
Do you wish to install currency [Y/n]: y
要安裝所有腳本,運(yùn)行:
$ sudo ./install.sh all
要安裝特定的腳本,比如 currency,運(yùn)行:
$ sudo ./install.sh currency
你也可以使用 Linuxbrew 包管理器來(lái)安裝它。
安裝所有的工具,運(yùn)行:
$ brew install bash-snippets
安裝特定的工具:
$ brew install bash-snippets --without-all-tools --with-newton --with-weather
另外,對(duì)于那些基于 Debian 系統(tǒng)的,例如 Ubuntu、Linux Mint,可以添加 PPA 源:
$sudo add-apt-repository ppa:navanchauhan/bash-snippets
$sudo apt update
$sudo apt install bash-snippets
用法
需要網(wǎng)絡(luò)連接才能使用這些工具。用法很簡(jiǎn)單。讓我們來(lái)看看如何使用其中的一些腳本,我假設(shè)你已經(jīng)安裝了所有腳本。
1、 Currency – 貨幣轉(zhuǎn)換器
這個(gè)腳本根據(jù)實(shí)時(shí)匯率轉(zhuǎn)換貨幣。輸入當(dāng)前貨幣代碼和要交換的貨幣,以及交換的金額,如下所示:
$currency
What isthe base currency: INR
What currency toexchange to: USD
What isthe amount being exchanged: 10
=========================
| INR toUSD
| Rate: 0.015495
| INR: 10
| USD: .154950
=========================
你也可以在單條命令中傳遞所有參數(shù),如下所示:
$ currency INR USD 10
參考以下屏幕截圖:
2、 Stocks – 顯示股票價(jià)格詳細(xì)信息
如果你想查看一只股票價(jià)格的詳細(xì)信息,輸入股票即可,如下所示:
上面輸出了 Intel 股票 的詳情。
3、 Weather – 顯示天氣詳細(xì)信息
讓我們查看以下天氣詳細(xì)信息,運(yùn)行以下命令:
$ weather
示例輸出:
正如你在上面屏幕截圖中看到的那樣,它提供了 3 天的天氣預(yù)報(bào)。不使用任何參數(shù)的話,它將根據(jù)你的 IP 地址顯示天氣詳細(xì)信息。你還可以顯示特定城市或國(guó)家/地區(qū)的天氣詳情,如下所示:
$ weather Chennai
同樣,你可以查看輸入以下命令來(lái)查看月相(月亮的形態(tài)):
$ weather moon
示例輸出:
4、 Crypt – 加解密文件
此腳本對(duì) openssl 做了一層包裝,允許你快速輕松地加密和解密文件。
要加密文件,使用以下命令:
$ crypt -e [original file] [encrypted file]
例如,以下命令將加密 ostechnix.txt,并將其保存在當(dāng)前工作目錄下,名為 encrypt_ostechnix.txt。
$ crypt -e ostechnix.txt encrypt_ostechnix.txt
輸入兩次文件密碼:
Encrypting ostechnix.txt...
enter aes-256-cbc encryption password:
Verifying - enter aes-256-cbc encryption password:
Successfully encrypted
上面命令將使用 AES 256 位密鑰加密給定文件。密碼不要保存在純文本文件中。你可以加密 .pdf、.txt、 .docx、 .doc、 .png、 .jpeg 類型的文件。
要解密文件,使用以下命令:
$ crypt -d [encrypted file] [output file]
例如:
$ crypt -d encrypt_ostechnix.txt ostechnix.txt
輸入密碼解密:
Decrypting encrypt_ostechnix.txt...
enter aes-256-cbc decryption password:
Successfully decrypted
5、 Movies – 查看電影詳情
使用這個(gè)腳本,你可以查看電影詳情。
以下命令顯示了一部名為 “mother” 的電影的詳情:
6、 顯示類似條目
要使用這個(gè)腳本,你需要從這里 獲取 API 密鑰。不過(guò)不用擔(dān)心,它完全是免費(fèi)的。一旦你獲得 API 密鑰后,將以下行添加到 ~/.bash_profile:export TASTE_API_KEY=”你的 API 密鑰放在這里”。(LCTT 譯注: TasteDive 是一個(gè)推薦引擎,它會(huì)根據(jù)你的品味推薦相關(guān)項(xiàng)目。)
現(xiàn)在你可以根據(jù)你提供的項(xiàng)目查看類似項(xiàng)目,如下所示:
$ taste -i Red Hot Chilli Peppers
7、 Short – 縮短 URL
這個(gè)腳本會(huì)縮短給定的 URL。
$ short
8、 Geo – 顯示網(wǎng)絡(luò)的詳情
這個(gè)腳本會(huì)幫助你查找網(wǎng)絡(luò)的詳細(xì)信息,例如廣域網(wǎng)、局域網(wǎng)、路由器、 dns、mac 地址和 ip 地址。
例如,要查找你的局域網(wǎng) ip,運(yùn)行:
$ geo -l
我系統(tǒng)上的輸出:
192.168.43.192
查看廣域網(wǎng) ip:
$ geo -w
在終端中輸入 geo 來(lái)查看更多詳細(xì)信息。
9、 Cheat – 顯示 Linux 命令的備忘單
想?yún)⒖?Linux 命令的備忘單嗎?這是可能的。以下命令將顯示 curl 命令的備忘單:
$ cheat curl
只需用你選擇的命令替換 curl 即可顯示其備忘單。這對(duì)于快速參考你要使用的任何命令非常有用。
10、 Youtube-Viewer – 觀看 YouTube 視頻
使用此腳本,你可以直接在終端上搜索或打開(kāi) YouTube 視頻。(LCTT 譯注:在媒體播放器中,而不是文本的終端中打開(kāi))
讓我們來(lái)看一些有關(guān) Ed Sheeran 的視頻。
$ ytview Ed Sheeran
從列表中選擇要播放的視頻。所選內(nèi)容將在你的默認(rèn)媒體播放器中播放。
要查看藝術(shù)家的近期視頻,你可以使用:
$ ytview -c [channel name]
要尋找視頻,只需輸入:
$ ytview -s [videoToSearch]
或者:
$ ytview [videoToSearch]
11、 cloudup – 備份 GitHub 倉(cāng)庫(kù)到 bitbucket
你在 GitHub 上托管過(guò)任何項(xiàng)目嗎?如果托管過(guò),那么你可以隨時(shí)間 GitHub 倉(cāng)庫(kù)備份到 bitbucket,它是一種用于源代碼和開(kāi)發(fā)項(xiàng)目的基于 Web 的托管服務(wù)。
你可以使用 -a 選項(xiàng)一次性備份指定用戶的所有 GitHub 倉(cāng)庫(kù),或者備份單個(gè)倉(cāng)庫(kù)。
要備份 GitHub 倉(cāng)庫(kù),運(yùn)行:
$ cloudup
系統(tǒng)將要求你輸入 GitHub 用戶名, 要備份的倉(cāng)庫(kù)名稱以及 bitbucket 用戶名和密碼等。
12、 Qrify – 將字符串轉(zhuǎn)換為二維碼
這個(gè)腳本將任何給定的文本字符串轉(zhuǎn)換為二維碼。這對(duì)于發(fā)送鏈接或者保存一串命令到手機(jī)非常有用。
$ qrify convert this text into qr code
示例輸出:
很酷,不是嗎?
13、 Cryptocurrency
它將顯示十大加密貨幣實(shí)時(shí)匯率。
輸入以下命令,然后單擊回車來(lái)運(yùn)行:
$ cryptocurrency
14、 Lyrics
這個(gè)腳本從命令行快速獲取一首歌曲的歌詞。
例如,我將獲取 “who is it” 歌曲的歌詞,這是一首由 邁克爾·杰克遜Michael Jackson 演唱的流行歌曲。
$ lyrics -a michael jackson -s who is it
15、 Meme
這個(gè)腳本允許你從命令行創(chuàng)建簡(jiǎn)單的表情貼圖。它比基于 GUI 的表情包生成器快得多。
要?jiǎng)?chuàng)建一個(gè)表情貼圖,只需輸入:
$meme -fmymeme
Enter the name forthe meme'sbackground(Ex.buzz,doge,blb): buzz
Enter the text forthe first line: THISISA
Enter the text forthe second line: MEME
這將在你當(dāng)前的工作目錄創(chuàng)建 jpg 文件。
16、 Newton
厭倦了解決復(fù)雜的數(shù)學(xué)問(wèn)題?你來(lái)對(duì)了。Newton 腳本將執(zhí)行數(shù)值計(jì)算,乃至于符號(hào)數(shù)學(xué)解析。
17、 Siteciphers
這個(gè)腳本可以幫助你檢查在給定的 https 站點(diǎn)上啟用/禁用哪些加密算法。(LCTT 譯注:指 HTTPS 通訊中采用的加密算法)
$ siteciphers google.com
18、 Todo
它允許你直接從終端創(chuàng)建日常任務(wù)。
讓我們來(lái)創(chuàng)建一些任務(wù)。
$todo -aThe first task
01).The first task Tue Jun2614:51:30IST2018
要添加其它任務(wù),只需添加任務(wù)名稱重新運(yùn)行上述命令即可。
$todo -aThe second task
01).The first task Tue Jun2614:51:30IST2018
02).The second task Tue Jun2614:52:29IST2018
要查看任務(wù)列表,運(yùn)行:
$todo -g
01).The first task Tue Jun2614:51:30IST2018
02).AThe second task Tue Jun2614:51:46IST2018
一旦你完成了任務(wù),就可以將其從列表中刪除,如下所示:
$todo -r2
Sucessfully removed task number2
01).The first task Tue Jun2614:51:30IST2018
要清除所有任務(wù),運(yùn)行:
$todo -c
Tasks cleared.
19、 Transfer
Transfer 腳本允許你通過(guò)互聯(lián)網(wǎng)快速輕松地傳輸文件和目錄。
讓我們上傳一個(gè)文件:
該文件將上傳到 transfer.sh 站點(diǎn)。Transfer.sh 允許你一次上傳最大 10 GB 的文件。所有共享文件在 14 天后自動(dòng)過(guò)期。如你所見(jiàn),任何人都可以通過(guò) Web 瀏覽器訪問(wèn) URL 或使用 transfer 目錄來(lái)下載文件,當(dāng)然,transfer 必須安裝在他/她的系統(tǒng)中。
現(xiàn)在從你的系統(tǒng)中移除文件。
$ rm -fr test.txt
現(xiàn)在,你可以隨時(shí)(14 天內(nèi))從 transfer.sh 站點(diǎn)下載該文件,如下所示:
$ transfer -d Downloads ivmfj test.txt
獲得幫助
如果你不知道如何使用特定腳本,只需輸入該腳本的名稱,然后按下 ENTER 鍵,你將會(huì)看到使用細(xì)節(jié)。以下示例顯示 Qrify 腳本的幫助信息。
更新腳本
你可以隨時(shí)使用 -u 選項(xiàng)更新已安裝的工具。以下命令更新 “weather” 工具。
$ weather -u
卸載
你可以使用以下命令來(lái)卸載這些工具。
克隆倉(cāng)庫(kù):
$ git clone https://github.com/alexanderepstein/Bash-Snippets
進(jìn)入 Bash-Snippets 目錄:
$ cd Bash-Snippets
運(yùn)行以下命令來(lái)卸載腳本:
$ sudo ./uninstall.sh
輸入 y,并按下回車鍵來(lái)移除每個(gè)腳本。
Do you wish to uninstall currency [Y/n]: y
好了,這就是全部了。我必須承認(rèn),在測(cè)試這些腳本時(shí)我印象很深刻。我真的很喜歡將所有有用的腳本組合到一個(gè)包中的想法。感謝開(kāi)發(fā)者。試一試,你不會(huì)失望的。
-
腳本
+關(guān)注
關(guān)注
1文章
395瀏覽量
28270 -
Bash
+關(guān)注
關(guān)注
0文章
57瀏覽量
10341
原文標(biāo)題:獻(xiàn)給命令行重度用戶的一組實(shí)用 BASH 腳本
文章出處:【微信號(hào):LinuxHub,微信公眾號(hào):Linux愛(ài)好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
在STM32實(shí)現(xiàn)命令行
命令行自動(dòng)補(bǔ)全原理
caxa命令行中的應(yīng)用
AWS提供基于WEB的命令行訪問(wèn)途徑
Shell命令行解釋器簡(jiǎn)介
如何在bash shell腳本中接受參數(shù)
如何在Linux命令行中運(yùn)行Python腳本
Emulex OneCommand命令行接口用戶指南 12.2版

OneCommand Manager命令行界面用戶手冊(cè)

評(píng)論