Your company here — click to reach over 10,000 unique daily visitors

idn - Man Page

Internationalized Domain Names command line tool


idn [OPTION]... [STRINGS]...


Internationalized Domain Name (IDN) convert STRINGS, or standard input.

Command line interface to the internationalized domain name library.

All strings are expected to be encoded in the preferred charset used by your locale.  Use --debug to find out what this charset is.  You can override the charset used by setting environment variable CHARSET.

To process a string that starts with '-', for example '-foo', use '--' to signal the end of parameters, as in: idn --quiet -a -- -foo

Mandatory arguments to long options are mandatory for short options too.

-h,  --help

Print help and exit

-V,  --version

Print version and exit

-s,  --stringprep

Prepare string according to nameprep profile

-d,  --punycode-decode

Decode Punycode

-e,  --punycode-encode

Encode Punycode

-a,  --idna-to-ascii

Convert to ACE according to IDNA (default mode)

-u,  --idna-to-unicode

Convert from ACE according to IDNA


Toggle IDNA AllowUnassigned flag (default off)


Toggle IDNA UseSTD3ASCIIRules flag (default off)


Don't check string for TLD specific rules Only for --idna-to-ascii and --idna-to-unicode

-n,  --nfkc

Normalize string according to Unicode v3.2 NFKC

-p,  --profile=STRING

Use specified stringprep profile instead Valid stringprep profiles: Nameprep iSCSI Nodeprep Resourceprep trace SASLprep


Print debugging information


Silent operation


Written by Simon Josefsson.

Reporting Bugs

Report bugs to: help-libidn@gnu.org
GNU Libidn home page: <https://www.gnu.org/software/libidn/>
General help using GNU software: <https://www.gnu.org/gethelp/>

See Also

The full documentation for idn is maintained as a Texinfo manual.  If the info and idn programs are properly installed at your site, the command

info idn

should give you access to the complete manual.

Referenced By


January 2024 GNU Libidn 1.42