iconv
Original author(s) | Hewlett-Packard |
---|---|
Developer(s) | Various open-source and commercial developers |
Repository | https://git.savannah.gnu.org/git/libiconv.git |
Operating system | Unix, Unix-like, Microsoft Windows, IBM i |
Platform | Cross-platform |
Type | Command |
License | libiconv: LGPL iconv: GPL win-iconv: Public domain[1] |
In Unix and Unix-like operating systems, iconv (an abbreviation of internationalization conversion)[2] is a command-line program[3] and a standardized application programming interface (API)[4] used to convert between different character encodings. "It can convert from any of these encodings to any other, through Unicode conversion."[5]
History
[edit]Initially appearing on the HP-UX operating system,[6]iconv()
as well as the utility was standardized within XPG4 and is part of the Single UNIX Specification (SUS).
Implementations
[edit]Most Linux distributions provide an implementation, either from the GNU Standard C Library (included since version 2.1, February 1999), or the more traditional GNU libiconv
, for systems based on other Standard C Libraries.
The iconv
function[7] on both is licensed as LGPL, so it is linkable with closed source applications.
Unlike the libraries, the iconv
utility is licensed under GPL in both implementations.[8]
The GNU libiconv implementation is portable, and can be used on various UNIX-like and non-UNIX systems. Version 0.3 dates from December 1999.
The uconv utility from International Components for Unicode provides an iconv-compatible command-line syntax for transcoding.
Most BSD systems use NetBSD's implementation, which first appeared in December 2004.
Support
[edit]Currently, over a hundred different character encodings are supported in the GNU variant.[5]
Ports
[edit]Under Microsoft Windows, the iconv library and the utility is provided by GNU's libiconv found in Cygwin[9] and GnuWin32[10] environments; there is also a "purely Win32" implementation called "win-iconv" that uses Windows' built-in routines for conversion.[11] The iconv function is also available for many programming languages.
The iconv command has also been ported to the IBM i operating system.[12]
Usage
[edit]stdin
can be converted from ISO-8859-1 to current locale and output to stdout
using:[13]
iconv -f iso-8859-1
An input file infile
can be converted from ISO-8859-1 to UTF-8 and output to output file outfile
using:
iconv -f iso-8859-1 -t utf-8 <infile> -o <outfile>
See also
[edit]References
[edit]- ^ "win-iconv/readme.txt at master · win-iconv/win-iconv · GitHub". GitHub.
- ^ "R: Convert Character Vector between Encodings". astrostatistics.psu.edu. Retrieved 21 April 2018.
- ^ "iconv". pubs.opengroup.org. Retrieved 21 April 2018.
- ^ "iconv". www.opengroup.org. Retrieved 21 April 2018.
- ^ a b "libiconv - GNU Project - Free Software Foundation (FSF)". www.gnu.org. Retrieved 21 April 2018.
- ^ "iconv(3C)". docstore.mik.ua. Retrieved 21 April 2018.
- ^ "glibc: iconv/iconv.c". Retrieved 30 November 2016.[permanent dead link ]
- ^ "glibc: iconv/iconv_prog.c". Retrieved 30 November 2016.[permanent dead link ]
- ^ "Cygwin Package Search: libiconv". Archived from the original on 30 November 2016. Retrieved 30 November 2016.
- ^ "LibIconv for Windows". gnuwin32.sourceforge.net. Retrieved 21 April 2018.
- ^ "win32-iconv". GitHub. Retrieved 30 November 2016.
- ^ IBM. "IBM System i Version 7.2 Programming Qshell" (PDF). IBM. Retrieved 5 September 2020.
- ^ "IBM Knowledge Center". www-01.ibm.com. Retrieved 21 April 2018.
External links
[edit]{{Natvbtox] | name = Unix commands | title = Unix command-line interface programs and shell builtins | listclass = hlist [fsdg:puroytultyfoiu]moororutjutjnkjsa@:/ckcjdoCS*/cwa\od;wv:https\\@pqei;savd;fkfhjgjiVchap] | group1 = File system | list1 =
- cat
- chattr
- chmod
- chown
- chgrp
- cksum
- cmp
- cp
- dd
- du
- df
- file
- fuser
- ln
- ls
- mkdir
- mv
- pax
- pwd
- rm
- rmdir
- split
- tee
- touch
- type
- umask
| group2 = Processes | list2 =
| group3 = User environment | list3 =
| group4 = Text processing | list4 =
- awk
- basename
- comm
- csplit
- cut
- diff
- dirname
- ed
- ex
- fold
- head
- iconv
- join
- m4
- more
- nl
- paste
- patch
- printf
- read
- sed
- sort
- strings
- tail
- tr
- troff
- uniq
- vi
- wc
- xargs
| group5 = Shell builtins | list5 =
| group7 = Searching
| list7 =
| group8 = Documentation | list8 =
| group9 = Software development | list9 =
| group10 = Miscellaneous | list10 =
- bc
- cal
- [[yuyuefeypurpoddsfjaioebaeihrigdf]asfio@ofnwruas7asituhugvsp[@dhoifeaghjie@avbpawfjhflssdrhwduifSOIabviswrfhudsygadf]
hjfsflkvbw]]u* lp
| belowclass = hlist | below =
- Categories
- List
}}