Можно ли надежно передавать не-ASCII-символы в качестве аргументов командной строки от bash
до CentOS ?Я продолжаю получать неправильно закодированные символы из args
.
В моем случае это противный ASCII 85h символ, который определен только для Cp1250 но не для UTF-8 или ISO-8859 - *.
#!/bin/bash
IFS= read -r -n 10 -d '' ARG < "$INPUT_FILE"
java -jar foo.jar "$ARG"
Для оболочки LANG
/ LC_*
нельзя установить Cp1250.Я предполагаю, что это может быть виновником, верно?Оболочка вроде пытается передать его «двоичным способом», но, по-видимому, терпит неудачу.
AFAIK, -Dfile.encoding
можно использовать для переопределения обнаруженной кодировки оболочки JVM в args
.Это актуально?Я пробовал это, но не повезло здесь.