0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

用于解析和操作URL的命令行工具

OSC開源社區(qū) ? 來源:OSC開源社區(qū) ? 2023-04-11 10:02 ? 次閱讀

curl 作者 Daniel 宣布推出新的開源項目:trurl,這是一款用于解析和操作 URL 的命令行工具,主要是面向 shell 腳本作者提供。Daniel 稱項目名字中的 'tr' 代表 translate 或 transpose。e0ca607c-d7fb-11ed-bfe3-dac502259ad0.pngDaniel 表示,URL 很難解析,因此導(dǎo)致軟件存在許多安全問題。trurl 希望通過消除腳本和命令行作者到處重復(fù)發(fā)明輪子的需求來幫助緩解這個問題。trurl 使用了 libcurl 的 URL 解析器,因此解析和理解 URL 的方式與命令行工具 curl 完全相同 —— 使其成為完美的配套工具。示例代碼
  $ trurl --url https://curl.se --set host=example.com
  https://example.com/

  $ trurl --set host=example.com --set scheme=ftp
  ftp://example.com/

  $ trurl --url https://curl.se/we/are.html --redirect here.html
  https://curl.se/we/here.html

  $ trurl --url https://curl.se/we/../are.html --set port=8080
  https://curl.se:8080/are.html

  $ trurl --url https://curl.se/we/are.html --get '{path}'
  /we/are.html

  $ trurl --url https://curl.se/we/are.html --get '{port}'
  443

  $ trurl https://example.com/hello.html --get '{scheme} {port} {path}'
  https 443 /hello.html

  $ trurl --url https://curl.se/hello --append path=you
  https://curl.se/hello/you

  $ trurl --url "https://curl.se?name=hello" --append query=search=string
  https://curl.se/?name=hello&search=string

  $ trurl --url-file url-list.txt --get '{host}'
  [one host name per URL in the input file]

  $ cat url-list.txt | trurl --url-file - --get '{host}'
  [one host name per URL in the input file]

  $ trurl "https://fake.host/hello#frag" --set user=:: --json
  [
    {
      "url": "https://%3a%3amoo%3a%3a@fake.host/hello#frag",
      "scheme": "https",
      "user": "::",
      "host": "fake.host",
      "port": "443",
      "path": "/hello",
      "fragment": "frag"
    }
  ]

  $ trurl "https://example.com?search=hello&utm_source=tracker" --trim query="utm_*"
  https://example.com/?search=hello

審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • URL
    URL
    +關(guān)注

    關(guān)注

    0

    文章

    138

    瀏覽量

    15218
  • Shell
    +關(guān)注

    關(guān)注

    1

    文章

    359

    瀏覽量

    23192

原文標(biāo)題:curl作者開源trurl,用于解析和操作URL的命令行工具

文章出處:【微信號:OSC開源社區(qū),微信公眾號:OSC開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    玩轉(zhuǎn)SQLite2:SQLite命令行基本操作

    本篇介紹SQLite的命令行基本操作
    的頭像 發(fā)表于 09-23 08:59 ?2030次閱讀
    玩轉(zhuǎn)SQLite2:SQLite<b class='flag-5'>命令行</b>基本<b class='flag-5'>操作</b>

    在STM32實現(xiàn)命令行

    工作中的開發(fā)環(huán)境都是基于linux命令行交互,作為命令行的重度使用者,玩單片機也要使用命令行工具,百度了一些命令行
    發(fā)表于 12-09 11:32 ?2113次閱讀

    caxa命令行中的應(yīng)用

    caxa命令行中的應(yīng)用 命令行對于大多用戶來說往往只是輸入數(shù)據(jù)的作用,但是其中的奧妙還有很多,下面就給大家
    發(fā)表于 10-18 18:18 ?2258次閱讀

    CMD的命令行高級教程

    CMD的命令行高級教程
    發(fā)表于 10-24 08:31 ?30次下載
    CMD的<b class='flag-5'>命令行</b>高級教程

    監(jiān)控jvm常用的5個命令行工具

    常用的幾個命令行工具有jps、jstat、jinfo、jmap、jstack等。這幾個工具可以安裝openjdk-devel-debug包。
    的頭像 發(fā)表于 02-06 14:47 ?5752次閱讀
    監(jiān)控jvm常用的5個<b class='flag-5'>命令行</b><b class='flag-5'>工具</b>

    Xilinx軟件命令行工具:XSCT開發(fā)和調(diào)試

    了解如何使用XSCT,Xilinx軟件命令行工具進行開發(fā)和調(diào)試。 該視頻演示了XSCT如何充當(dāng)Xilinx SDK的命令行控制臺。
    的頭像 發(fā)表于 11-21 06:02 ?1.4w次閱讀

    Xilinx軟件命令行工具進行開發(fā)和調(diào)試

    了解如何使用XSCT,Xilinx軟件命令行工具進行開發(fā)和調(diào)試。 該視頻演示了XSCT如何充當(dāng)Xilinx SDK的命令行控制臺。
    的頭像 發(fā)表于 11-22 06:53 ?6465次閱讀

    維基鏈的命令行是如何高效快速的對維基鏈節(jié)點進行操作

    的,WaykiChain也為開發(fā)者提供了相應(yīng)的工具,開發(fā)者通過此命令行工具可以高效快速的對維基鏈節(jié)點進行操作。在維基鏈中,此命令行
    發(fā)表于 06-24 11:15 ?968次閱讀

    Git常見的誤區(qū)和命令行工具等綜述

    Git常見的誤區(qū)和命令行工具等綜述
    發(fā)表于 08-31 09:51 ?0次下載

    Shell命令行解釋器簡介

    Shell 是一個命令行解釋器,Shell 為用戶提供了與設(shè)備進行命令行交互的方式,用戶通過串口、以太網(wǎng)、無線等方式將命令傳輸給具有 Shell 功能的設(shè)備,設(shè)備會解析
    的頭像 發(fā)表于 08-19 17:20 ?3036次閱讀

    Golang基于flag庫實現(xiàn)一個命令行工具

    Golang 標(biāo)準(zhǔn)庫中的 flag 庫提供了解析命令行選項的能力,我們可以基于此來開發(fā)命令行工具
    的頭像 發(fā)表于 10-28 09:26 ?1176次閱讀

    新的開源命令行工具west

    電子發(fā)燒友網(wǎng)站提供《新的開源命令行工具west.zip》資料免費下載
    發(fā)表于 11-11 09:25 ?0次下載
    新的開源<b class='flag-5'>命令行</b><b class='flag-5'>工具</b>west

    PetaLinux工具文檔:命令行參考指南

    電子發(fā)燒友網(wǎng)站提供《PetaLinux工具文檔:命令行參考指南.pdf》資料免費下載
    發(fā)表于 09-15 14:52 ?0次下載
    PetaLinux<b class='flag-5'>工具</b>文檔:<b class='flag-5'>命令行</b>參考指南

    linux虛擬機怎么調(diào)出命令行

    在Linux虛擬機中調(diào)出命令行界面,可以通過以下步驟實現(xiàn): 打開虛擬機,進入到Linux系統(tǒng)。 在桌面或應(yīng)用菜單中找到終端或命令行圖標(biāo),點擊打開。 輸入命令行指令,執(zhí)行相應(yīng)的操作。 另
    的頭像 發(fā)表于 11-08 11:28 ?2511次閱讀

    HarmonyOS開發(fā):【基于命令行(安裝庫和工具集)】

    使用命令行進行設(shè)備開發(fā)時,可以通過以下步驟安裝編譯OpenHarmony需要的庫和工具。
    的頭像 發(fā)表于 04-25 21:03 ?279次閱讀
    HarmonyOS開發(fā):【基于<b class='flag-5'>命令行</b>(安裝庫和<b class='flag-5'>工具</b>集)】