cp1252 - Linux


The cp1252 command converts text encoded in the "Windows-1252" character set to UTF-8 encoding. It’s commonly used to process text files originating from Windows systems or older software that doesn’t support Unicode.


cp1252 [-h] [-o OUTPUT] [INPUT]


  • -h, --help: Display usage and help information.
  • -o, --output : Specify the output file path. Default: Standard output.


  • Convert a file named "input.txt" to UTF-8:
cp1252 input.txt
  • Convert text from a pipe and print to standard output:
cat input.txt | cp1252
  • Save the converted output to a new file:
cp1252 -o output.txt input.txt

Common Issues

  • Incorrect Character Mapping: Ensure the input text is encoded in Windows-1252. If not, the conversion may produce incorrect results.
  • Invalid Input: If the input file contains non-Windows-1252 characters, cp1252 may fail or produce unexpected output.


Use cp1252 together with other commands for advanced text processing tasks:

  • Convert Multiple Files: Use find to locate and convert multiple files in a directory:
find . -type f -exec cp1252 -o {}.utf8 {} \;
  • Pipe Output to Other Programs: Convert text from cp1252 and pipe it to another command, such as grep or wc:
cp1252 input.txt | grep "pattern"

Related Commands

  • iconv: General-purpose character encoding converter.
  • recode: Character set converter with advanced features.
  • file: Determine the file type and encoding.