| name | funurl |
| description | Parse, modify, encode, decode, and deduplicate URLs from the command line. Use when the user needs to extract URL components, manipulate URLs, encode/decode URL strings, or deduplicate URL lists for security testing or web automation. |
funURL - A Functional URL Swiss Army Knife
funURL is a CLI tool for parsing, validating, modifying, encoding/decoding, and deduplicating URLs.
Installation
.NET Tool
dotnet tool install --global funurl
Binary Download
Download from Releases for Linux, macOS, or Windows (x64 and ARM64).
Commands
URL Parsing
Extract specific components from a URL:
funurl parse https://subdomain.example.com/path?query=value#fragment
funurl parse -c https://example.com
funurl parse -s https://sub.example.com
funurl parse -t https://example.com
funurl parse -n https://example.com
funurl parse -p https://example.com/path
funurl parse -q https://example.com/?k=v
funurl parse -f https://example.com/#section
URL Modification
funurl modify -c https http://example.com
funurl modify -p /new/path https://example.com/old/path
funurl modify -q "key1=val1&key2=val2" https://example.com?old=param
funurl modify -f "new-section" https://example.com#old-section
URL Encoding
funurl encode "hello world"
funurl encode -c "param=value with spaces"
URL Decoding
funurl decode "hello%20world"
funurl decode -c "param%3Dvalue%20with%20spaces"
URL Deduplication
funurl dedupe https://google.com https://google.com/home?qs=value https://google.com/home?qs=secondValue
cat urls.txt | funurl dedupe
Input Methods
- Via command-line argument:
funurl parse https://example.com
- Via stdin (pipe):
echo "https://example.com" | funurl parse
- Via interactive input:
funurl parse then type URL and press Enter
References