從命令列輕鬆將文字片段上傳到類似 Pastebin 的服務中
每當需要線上共享程式碼片段時,我們想到的第一個便是 Pastebin.com,這是 Paul Dixon 於 2002 年推出的線上文字共享網站。現在,有幾種可供選擇的文字共享服務可以上傳和共享文字片段、錯誤日誌、配置檔案、命令輸出或任何型別的文字檔案。如果你碰巧經常使用各種類似於 Pastebin 的服務來共享程式碼,那麼這對你來說確實是個好訊息。向 Wgetpaste 打個招呼吧,它是一個命令列 BASH 實用程式,可輕鬆地將文字摘要上傳到類似 Pastebin 的服務中。使用 Wgetpaste 指令碼,任何人都可以與自己的朋友、同事或想在類似 Unix 的系統中的命令列中檢視/使用/審查程式碼的人快速共享文字片段。
安裝 Wgetpaste
Wgetpaste 在 Arch Linux [Community] 儲存庫中可用。要將其安裝在 Arch Linux 及其變體(如 Antergos 和 Manjaro Linux)上,只需執行以下命令:
$ sudo pacman -S wgetpaste
對於其他發行版,請從 Wgetpaste 網站 獲取原始碼,並按如下所述手動安裝。
首先下載最新的 Wgetpaste tar 檔案:
$ wget http://wgetpaste.zlin.dk/wgetpaste-2.28.tar.bz2
提取它:
$ tar -xvjf wgetpaste-2.28.tar.bz2
它將 tar 檔案的內容提取到名為 wgetpaste-2.28
的資料夾中。
轉到該目錄:
$ cd wgetpaste-2.28/
將 wgetpaste
二進位制檔案複製到 $PATH
中,例如 /usr/local/bin/
。
$ sudo cp wgetpaste /usr/local/bin/
最後,使用命令使其可執行:
$ sudo chmod +x /usr/local/bin/wgetpaste
將文字片段上傳到類似 Pastebin 的服務中
使用 Wgetpaste 上傳文字片段很簡單。讓我向你展示一些示例。
1、上傳文字檔案
要使用 Wgetpaste 上傳任何文字檔案,只需執行:
$ wgetpaste mytext.txt
此命令將上傳 mytext.txt
檔案的內容。
示例輸出:
Your paste can be seen here: https://paste.pound-python.org/show/eO0aQjTgExP0wT5uWyX7/
你可以通過郵件、簡訊、whatsapp 或 IRC 等任何媒體共享 pastebin 的 URL。擁有此 URL 的人都可以訪問它,並在他們選擇的 Web 瀏覽器中檢視文字檔案的內容。
這是 Web 瀏覽器中 mytext.txt
檔案的內容:
你也可以使用 tee
命令顯示貼上的內容,而不是盲目地上傳它們。
為此,請使用如下的 -t
選項。
$ wgetpaste -t mytext.txt
2、將文字片段上傳到其他服務
預設情況下,Wgetpaste 會將文字片段上傳到 poundpython(https://paste.pound-python.org/)服務。
要檢視支援的服務列表,請執行:
$ wgetpaste -S
示例輸出:
Services supported: (case sensitive):
Name: | Url:
=============|=================
bpaste | https://bpaste.net/
codepad | http://codepad.org/
dpaste | http://dpaste.com/
gists | https://api.github.com/gists
*poundpython | https://paste.pound-python.org/
在這裡,*
表示預設服務。
如你所見,Wgetpaste 當前支援五種文字共享服務。我並沒有全部嘗試,但是我相信所有服務都可以使用。
要將內容上傳到其他服務,例如 bpaste.net,請使用如下所示的 -s
選項。
$ wgetpaste -s bpaste mytext.txt
Your paste can be seen here: https://bpaste.net/show/5199e127e733
3、從標準輸入讀取輸入
Wgetpaste 也可以從標準輸入讀取。
$ uname -a | wgetpaste
此命令將上傳 uname -a
命令的輸出。
4、上傳命令及命令的輸出
有時,你可能需要貼上命令及其輸出。為此,請在如下所示的引號內指定命令的內容。
$ wgetpaste -c 'ls -l'
這會將命令 ls -l
及其輸出上傳到 pastebin 服務。
當你想讓其他人清楚地知道你剛執行的確切命令及其輸出時,此功能很有用。
如你在輸出中看到的,我執行了 ls -l
命令。
5、上載系統日誌檔案、配置檔案
就像我已經說過的,我們可以上載你的系統中任何型別的文字檔案,而不僅僅是普通的文字檔案,例如日誌檔案、特定命令的輸出等。例如,你剛剛更新了 Arch Linux 機器,最後系統損壞了。你問你的同事該如何解決此問題,他(她)想閱讀 pacman.log
檔案。 這是上傳 pacman.log
檔案內容的命令:
$ wgetpaste /var/log/pacman.log
與你的同事共享 pastebin URL,以便他/她可以檢視 pacman.log
,並通過檢視日誌檔案來幫助你解決問題。
通常,日誌檔案的內容可能太長,你不希望全部共享它們。在這種情況下,只需使用 cat
命令讀取輸出,然後使用 tail -n
命令定義要共享的行數,最後將輸出通過管道傳遞到 Wgetpaste,如下所示。
$ cat /var/log/pacman.log | tail -n 50 | wgetpaste
上面的命令將僅上傳 pacman.log
檔案的“最後 50 行”。
6、將輸入網址轉換為短連結
預設情況下,Wgetpaste 將在輸出中顯示完整的 pastebin URL。如果要將輸入 URL 轉換為短連結,只需使用 -u
選項。
$ wgetpaste -u mytext.txt
Your paste can be seen here: http://tinyurl.com/y85d8gtz
7、設定語言
預設情況下,Wgetpaste 將上傳“純文字”中的文字片段。
要列出指定服務支援的語言,請使用 -L
選項。
$ wgetpaste -L
該命令將列出預設服務(poundpython https://paste.pound-python.org/)支援的所有語言。
我們可以使用 -l
選項來改變它。
$ wgetpaste -l Bash mytext.txt
8、在輸出中禁用語法突出顯示或 html
如上所述,文字片段將以特定的語言格式(純文字、Bash 等)顯示。
但是,你可以更改此行為,以使用 -r
選項顯示原始文字摘要。
$ wgetpaste -r mytext.txt
Your raw paste can be seen here: https://paste.pound-python.org/raw/CUJhQ3jEmr2UvfmD2xCL/
如你在上面的輸出中看到的,沒有語法突出顯示,沒有 html 格式。只是原始輸出。
9、更改 Wgetpaste 預設值
所有預設值(DEFAULT_{NICK,LANGUAGE,EXPIRATION}[_${SERVICE}]
和 DEFAULT_SERVICE
)都可以在 /etc/wgetpaste.conf
中全域性更改,也可以在 ~/.wgetpaste.conf
檔案中針對每個使用者更改。但是,這些檔案在我的系統中預設情況下並不存在。我想我們需要手動建立它們。開發人員已經在這裡和這裡為這兩個檔案提供了示例內容。只需使用給定的樣本內容手動建立這些檔案,並相應地修改引數即可更改 Wgetpaste 的預設設定。
10、獲得幫助
要顯示幫助部分,請執行:
$ wgetpaste -h
作者:SK 選題:lujun9972 譯者:wxy 校對:wxy
訂閱“Linux 中國”官方小程式來檢視
相關文章
- Mac計算機上如何輕鬆查詢和刪除類似照片Mac計算機
- K8s 上輕鬆搭建百萬連線的 MQTT 服務K8SMQQT
- 用AppUploader輕鬆上傳IPA檔案APP
- 如何用命令將本地專案上傳到gitGit
- 在ECS上輕鬆搭建RDS的從例項
- 用 golang 去實現類似 swoole 的 websocket 服務 ?GolangWeb
- 輕輕鬆鬆實現本地和雲主機之間的檔案上傳下載
- 高效而輕鬆的sed命令
- mirrord:輕鬆地將流量從生產環境映象到開發環境開發環境
- 在 asp.net core 中使用類似 Application 的服務ASP.NETAPP
- 如何在 Laravel 專案中輕鬆實現上傳頭像功能?Laravel
- 31 天,從淺到深輕鬆學習 KotlinKotlin
- 如何將MongoDB加入到Windows服務中MongoDBWindows
- Windows從命令列建立文字檔案的兩種方式Windows命令列
- 從 PyTorch DDP 到 Accelerate 到 Trainer,輕鬆掌握分散式訓練PyTorchAI分散式
- 新課上線 | 每次 5 分鐘,輕鬆玩轉阿里雲容器服務!阿里
- 頭腦王者,輕輕鬆鬆上王者,憑自己的Python知識上王者Python
- Pet:一個簡單的命令列片段管理器命令列
- 從“軟體”到“服務“——【物件儲存】的發展歷程(上)物件
- 【上新】實戰能力UP!從基礎到入門,輕鬆掌握 CVE 復現技能
- 從VGG到ResNet,你想要的MXNet預訓練模型輕鬆學模型
- Android模組介面服務,暴露SDK+介面服務查詢(類似微信.api)AndroidAPI
- Vue學習路徑-輕鬆從基礎到實戰Vue
- 一鍵雲部署:ROS的Terraform託管服務助你輕鬆上線2048經典遊戲ROSORM遊戲
- HMS Core分析服務智慧運營,“智慧時機”上線,輕鬆提升Push點選
- 命令列重啟遠端桌面服務命令列
- ImageSharp.Web實戰:輕鬆搭建高效圖片服務Web
- 簡單5步,輕鬆debug K8S服務!K8S
- 從不可描述的服務雪崩到初探Hystrix
- VSCode中類似Postman的外掛VSCodePostman
- 從Spring中學到的【2】--容器類Spring
- 使用SecureCRT的SFTP將檔案上傳到Liunx系統上SecurecrtFTP
- 揭秘Arthas:如何輕鬆檢視入參的命令
- 從JavaScript中的類陣列物件說起JavaScript陣列物件
- 帶你十天輕鬆搞定 Go 微服務系列(八、服務監控)Go微服務
- 簡單幾步,教你在mac電腦上輕鬆啟用懸停文字!Mac
- 將Fedora 31升級到Fedora 32的命令列方法簡介命令列
- 如何在 Laravel 專案中輕鬆實現拖拽和剪下板黏貼上傳圖片?Laravel