gedit не может распознать кодировку символов, но gvim может

Таким образом, я не смог сжать контейнер lvm вручную.

Но мне удалось добавить параметр discard="true" в файл .vbox, который выглядел как


    

. После перезагрузки снова я смог запустить fstrim и файл .vdi был сжат.

На самом деле у меня были некоторые проблемы с использованием этого параметра раньше, поэтому я хотел сделать это вручную.

I настоятельно рекомендую сделать резервную копию, так как я убил мой .vdi-файл и не смог восстановить его. Кроме того, я отключил эту опцию позже и проверил файловую систему до того, как удалил свою резервную копию.

Есть еще несколько проблем .

4
задан 30 October 2010 в 03:05

40 ответов

iconv, вероятно, вы хотите использовать. iconv -l покажет вам доступные кодировки, а затем вы можете использовать пару команд для их пересчета:

# all text files are in ./originals/
# new files will be written to ./newversions/

mkdir -p newversions
cd originals
for file in *.txt; do
    cat $file | iconv -f ASCII -t utf-8 > ../newversions/$file;
done

Если вы хотите сделать это с файлами, вы не кодируете (потому что они повсюду), вы хотите добавить еще несколько команд: find, file, awk и sed. Последние два процесса обрабатывают вывод файла.

for file in find . -type f -exec file --mime {} \; | grep "ascii" | awk '{print $1}' | sed s/.$//; do
    ...

Я понятия не имею, работает ли это на самом деле, поэтому я, конечно, не запустил бы его из ничего, кроме наименее важного для вас каталога ( создать тестовую папку с некоторыми известными файлами ASCII). Синтаксис find может исключить его из цикла for. Я надеюсь, что кто-то еще с большим опытом bash может прыгать туда и сортировать его, чтобы он поступал правильно.

4
ответ дан 26 May 2018 в 00:43
  • 1
    Ага благодарит; который сортирует пакетную кодировку .. Я фактически использовал порт Win32 iconv couplo лет назад, чтобы преобразовать между UTF-8 и UTF-16 ... Я думал, что это было только для преобразования между разные кодировки unicode, но, как вы уже указали, это много больше .... Знаете ли вы, что на самом деле нашли эти файлы? Они разбросаны по многим каталогам ... – Peter.O 29 October 2010 в 18:51
  • 2
    Вы хотите расширить скрипт, чтобы использовать find (чтобы найти все .txt-файлы) и его флаг -exec, чтобы запустить что-то против этого файла. Затем вы хотите, чтобы команда file обнаруживала кодировку. Подожди минутку. Я отредактирую свой ответ, чтобы показать вам, что я думаю. – Oli♦ 29 October 2010 в 19:34
  • 3
    Я попробовал file, но он возвращает ASCII ... Я думаю, что это то, что мне нужно обнаружить ... If the first byte (of a UTF-8 codepoint) is between 0x80 and 0xBF (reserved for additional bytes), or greater than 0xF7 ("overlong form"), that is considered an error – Peter.O 29 October 2010 в 19:46

iconv, вероятно, вы хотите использовать. iconv -l покажет вам доступные кодировки, а затем вы можете использовать пару команд для их пересчета:

# all text files are in ./originals/ # new files will be written to ./newversions/ mkdir -p newversions cd originals for file in *.txt; do cat $file | iconv -f ASCII -t utf-8 > ../newversions/$file; done

Если вы хотите сделать это с файлами, вы не кодируете (потому что они повсюду), вы хотите добавить еще несколько команд: find, file, awk и sed. Последние два процесса обрабатывают вывод файла.

for file in find . -type f -exec file --mime {} \; | grep "ascii" | awk '{print $1}' | sed s/.$//; do ...

Я понятия не имею, работает ли это на самом деле, поэтому я, конечно, не запустил бы его из ничего, кроме наименее важного для вас каталога ( создать тестовую папку с некоторыми известными файлами ASCII). Синтаксис find может исключить его из цикла for. Я надеюсь, что кто-то еще с большим опытом bash может прыгать туда и сортировать его, чтобы он поступал правильно.

4
ответ дан 25 July 2018 в 22:59

iconv, вероятно, вы хотите использовать. iconv -l покажет вам доступные кодировки, а затем вы можете использовать пару команд для их пересчета:

# all text files are in ./originals/ # new files will be written to ./newversions/ mkdir -p newversions cd originals for file in *.txt; do cat $file | iconv -f ASCII -t utf-8 > ../newversions/$file; done

Если вы хотите сделать это с файлами, вы не кодируете (потому что они повсюду), вы хотите добавить еще несколько команд: find, file, awk и sed. Последние два процесса обрабатывают вывод файла.

for file in find . -type f -exec file --mime {} \; | grep "ascii" | awk '{print $1}' | sed s/.$//; do ...

Я понятия не имею, работает ли это на самом деле, поэтому я, конечно, не запустил бы его из ничего, кроме наименее важного для вас каталога ( создать тестовую папку с некоторыми известными файлами ASCII). Синтаксис find может исключить его из цикла for. Я надеюсь, что кто-то еще с большим опытом bash может прыгать туда и сортировать его, чтобы он поступал правильно.

4
ответ дан 27 July 2018 в 01:52

iconv, вероятно, вы хотите использовать. iconv -l покажет вам доступные кодировки, а затем вы можете использовать пару команд для их пересчета:

# all text files are in ./originals/ # new files will be written to ./newversions/ mkdir -p newversions cd originals for file in *.txt; do cat $file | iconv -f ASCII -t utf-8 > ../newversions/$file; done

Если вы хотите сделать это с файлами, вы не кодируете (потому что они повсюду), вы хотите добавить еще несколько команд: find, file, awk и sed. Последние два процесса обрабатывают вывод файла.

for file in find . -type f -exec file --mime {} \; | grep "ascii" | awk '{print $1}' | sed s/.$//; do ...

Я понятия не имею, работает ли это на самом деле, поэтому я, конечно, не запустил бы его из ничего, кроме наименее важного для вас каталога ( создать тестовую папку с некоторыми известными файлами ASCII). Синтаксис find может исключить его из цикла for. Я надеюсь, что кто-то еще с большим опытом bash может прыгать туда и сортировать его, чтобы он поступал правильно.

4
ответ дан 31 July 2018 в 12:53

iconv, вероятно, вы хотите использовать. iconv -l покажет вам доступные кодировки, а затем вы можете использовать пару команд для их пересчета:

# all text files are in ./originals/ # new files will be written to ./newversions/ mkdir -p newversions cd originals for file in *.txt; do cat $file | iconv -f ASCII -t utf-8 > ../newversions/$file; done

Если вы хотите сделать это с файлами, вы не кодируете (потому что они повсюду), вы хотите добавить еще несколько команд: find, file, awk и sed. Последние два процесса обрабатывают вывод файла.

for file in find . -type f -exec file --mime {} \; | grep "ascii" | awk '{print $1}' | sed s/.$//; do ...

Я понятия не имею, работает ли это на самом деле, поэтому я, конечно, не запустил бы его из ничего, кроме наименее важного для вас каталога ( создать тестовую папку с некоторыми известными файлами ASCII). Синтаксис find может исключить его из цикла for. Я надеюсь, что кто-то еще с большим опытом bash может прыгать туда и сортировать его, чтобы он поступал правильно.

4
ответ дан 2 August 2018 в 04:21

iconv , вероятно, вы хотите использовать. iconv -l покажет вам доступные кодировки, а затем вы можете использовать пару команд для их пересчета:

  # все текстовые файлы находятся в ./originals/  # новые файлы будут записаны в ./newversions/ mkdir -p newversions cd оригиналы для файла в * .txt;  do cat $ file |  iconv -f ASCII -t utf-8 & gt;  ../newversions/$file;  done  

Если вы хотите сделать это с файлами, вы не кодируете (потому что они повсюду), вы хотите добавить еще несколько команд: найдите , файл , awk и sed . Последние два только что обрабатывают вывод файла.

  для файла в поиске.  -type f -exec file --mime {} \;  |  grep "ascii" |  awk '{print $ 1}' |  sed s /.$//;  do ...  

Я понятия не имею, работает ли это на самом деле, поэтому я, конечно, не запустил бы его из ничего, кроме наименее важного для вас каталога (сделайте тестовую папку с некоторыми известными ASCII файлы в). Синтаксис find может исключить его из цикла for. Я надеюсь, что кто-то еще с большим опытом работы с bash мог бы прыгнуть туда и разобраться, чтобы он поступал правильно.

4
ответ дан 4 August 2018 в 20:52

iconv , вероятно, вы хотите использовать. iconv -l покажет вам доступные кодировки, а затем вы можете использовать пару команд для их пересчета:

  # все текстовые файлы находятся в ./originals/  # новые файлы будут записаны в ./newversions/ mkdir -p newversions cd оригиналы для файла в * .txt;  do cat $ file |  iconv -f ASCII -t utf-8 & gt;  ../newversions/$file;  done  

Если вы хотите сделать это с файлами, вы не кодируете (потому что они повсюду), вы хотите добавить еще несколько команд: найдите , файл , awk и sed . Последние два только что обрабатывают вывод файла.

  для файла в поиске.  -type f -exec file --mime {} \;  |  grep "ascii" |  awk '{print $ 1}' |  sed s /.$//;  do ...  

Я понятия не имею, работает ли это на самом деле, поэтому я, конечно, не запустил бы его из ничего, кроме наименее важного для вас каталога (сделайте тестовую папку с некоторыми известными ASCII файлы в). Синтаксис find может исключить его из цикла for. Я надеюсь, что кто-то еще с большим опытом работы с bash мог бы прыгнуть туда и разобраться, чтобы он поступал правильно.

4
ответ дан 6 August 2018 в 04:26

iconv , вероятно, вы хотите использовать. iconv -l покажет вам доступные кодировки, а затем вы можете использовать пару команд для их пересчета:

  # все текстовые файлы находятся в ./originals/  # новые файлы будут записаны в ./newversions/ mkdir -p newversions cd оригиналы для файла в * .txt;  do cat $ file |  iconv -f ASCII -t utf-8 & gt;  ../newversions/$file;  done  

Если вы хотите сделать это с файлами, вы не кодируете (потому что они повсюду), вы хотите добавить еще несколько команд: найдите , файл , awk и sed . Последние два только что обрабатывают вывод файла.

  для файла в поиске.  -type f -exec file --mime {} \;  |  grep "ascii" |  awk '{print $ 1}' |  sed s /.$//;  do ...  

Я понятия не имею, работает ли это на самом деле, поэтому я, конечно, не запустил бы его из ничего, кроме наименее важного для вас каталога (сделайте тестовую папку с некоторыми известными ASCII файлы в). Синтаксис find может исключить его из цикла for. Я надеюсь, что кто-то еще с большим опытом работы с bash мог бы прыгнуть туда и разобраться, чтобы он поступал правильно.

4
ответ дан 7 August 2018 в 22:33

iconv , вероятно, вы хотите использовать. iconv -l покажет вам доступные кодировки, а затем вы можете использовать пару команд для их пересчета:

  # все текстовые файлы находятся в ./originals/  # новые файлы будут записаны в ./newversions/ mkdir -p newversions cd оригиналы для файла в * .txt;  do cat $ file |  iconv -f ASCII -t utf-8 & gt;  ../newversions/$file;  done  

Если вы хотите сделать это с файлами, вы не кодируете (потому что они повсюду), вы хотите добавить еще несколько команд: найдите , файл , awk и sed . Последние два только что обрабатывают вывод файла.

  для файла в поиске.  -type f -exec file --mime {} \;  |  grep "ascii" |  awk '{print $ 1}' |  sed s /.$//;  do ...  

Я понятия не имею, работает ли это на самом деле, поэтому я, конечно, не запустил бы его из ничего, кроме наименее важного для вас каталога (сделайте тестовую папку с некоторыми известными ASCII файлы в). Синтаксис find может исключить его из цикла for. Я надеюсь, что кто-то еще с большим опытом работы с bash мог бы прыгнуть туда и разобраться, чтобы он поступал правильно.

4
ответ дан 10 August 2018 в 10:40

iconv , вероятно, вы хотите использовать. iconv -l покажет вам доступные кодировки, а затем вы можете использовать пару команд для их пересчета:

  # все текстовые файлы находятся в ./originals/  # новые файлы будут записаны в ./newversions/ mkdir -p newversions cd оригиналы для файла в * .txt;  do cat $ file |  iconv -f ASCII -t utf-8 & gt;  ../newversions/$file;  done  

Если вы хотите сделать это с файлами, вы не кодируете (потому что они повсюду), вы хотите добавить еще несколько команд: найдите , файл , awk и sed . Последние два только что обрабатывают вывод файла.

  для файла в поиске.  -type f -exec file --mime {} \;  |  grep "ascii" |  awk '{print $ 1}' |  sed s /.$//;  do ...  

Я понятия не имею, работает ли это на самом деле, поэтому я, конечно, не запустил бы его из ничего, кроме наименее важного для вас каталога (сделайте тестовую папку с некоторыми известными ASCII файлы в). Синтаксис find может исключить его из цикла for. Я надеюсь, что кто-то еще с большим опытом работы с bash мог бы прыгнуть туда и разобраться, чтобы он поступал правильно.

4
ответ дан 13 August 2018 в 17:13
  • 1
    Ага благодарит; который сортирует пакетную кодировку .. Я фактически использовал порт Win32 iconv couplo лет назад, чтобы преобразовать между UTF-8 и UTF-16 ... Я думал, что это было только для преобразования между разные кодировки unicode, но, как вы уже указали, это много больше .... Знаете ли вы, что на самом деле нашли эти файлы? Они разбросаны по многим каталогам ... – Peter.O 29 October 2010 в 18:51
  • 2
    Вы хотите расширить скрипт, чтобы использовать find (чтобы найти все .txt-файлы) и его флаг -exec , чтобы запустить что-то против этого файла. Затем вам понадобится команда file для обнаружения кодировки. Подожди минутку. Я отредактирую свой ответ, чтобы показать вам, что я думаю. – Oli♦ 29 October 2010 в 19:34
  • 3
    Я попробовал файл , но он возвращает ASCII ... Я думаю, что это то, что мне нужно обнаружить ... Если первый байт (кода UTF-8) находится между 0x80 и 0xBF (зарезервировано для дополнительных байтов) или больше, чем 0xF7 («перекрытая форма»), которая считается ошибкой – Peter.O 29 October 2010 в 19:46

Gedit может определить правильный набор символов только в том случае, если он указан в «кодировке с открытым файлом». Вы можете изменить этот список, но имейте в виду, что порядок важен.

1
ответ дан 26 May 2018 в 00:43

Я думал об этом немного больше ...

Да, «ø» = 0xF8 hex * был определенно причиной того, почему gedit не откроет файл ... Почему? Потому что это не допустимый байт UTF-8. По умолчанию gedit будет открывать только файлы UTF-8 ...

Однако, gedit действительно имеет функцию автоматического обнаружения кодовой страницы, но сначала вы должны добавить кодовые страницы в свой список «возможно».

Ярко-красное диалоговое окно, которое появляется, когда Добавить не может распознать кодовую страницу, имеет на нем топик, который позволяет вам gedit еще одна кодовая страница ...

Проблема решена! ... почти ...

Хлопчатая проблема теперь снова поднимает голову ... Какая кодовая страница?

В моей ситуации я могу уверенно предположить, что это стандартная английская кодовая страница Windows (для моего региона? или для региона происхождения файла? .. Я упоминал «knarly» :) .. ..

Во всяком случае, почти позволит вам загружать файл, как только вы добавили кодовую страницу в свой список ...

Итак, хотя все Команды терминала полезны и интересны сами по себе, кажется, что эта линия мысли шла по неправильному пути.

В этих файлах нет ничего . В этих файлах добавлено ... Проблема, по-видимому, связана исключительно с кодовыми страницами.

gedit может открыть файл, как gvim. ... но соответствующую кодировку сначала необходимо добавить в ее список кодовых страниц. например. через диалог File-Open или с красным предупреждением, с которым я столкнулся.

0
ответ дан 26 May 2018 в 00:43
  • 1
    если у вас нет подсказки, есть ли способ «обнаружить», от терминала, какая кодовая страница вам нужна? – carnendil 14 February 2013 в 06:07
  • 2
    Попытка установить, какая кодовая страница была предназначена для оригинального автора, во многих ситуациях невозможна. Подмножества из нескольких кодовых страниц часто совпадают и создают "действительный" (для этой кодовой страницы и этого текста). Соответствующая кодовая страница может быть технически действительна, но текст может отображаться как неправильный символ. В этих случаях это действительно требует, чтобы текст был прочтен человеком! – Peter.O 15 February 2013 в 22:55
  • 3
    Что касается способов обнаружения кодовой страницы через терминал; iconv и recode могут использоваться, но они неуклюжи, так как часто существует несколько «действительных» возможности. Вам нужно просто проверять кодовые страницы (действительные и недействительные) до тех пор, пока не найдете подходящую кодовую страницу технически ... Я просто использую вместо этого emacs ... который, кстати, доступен для сценариев. то есть. Вы можете вызвать скрипт emac elisp из сценария bash (так же, как вы можете называть awk ). – Peter.O 15 February 2013 в 23:22

Вы можете использовать любую из трех команд:

gedit --encoding=utf-8 filename
gedit --encoding=iso-8859-15 filename
gedit --encoding=utf-16 filename
. . . . .
0
ответ дан 26 May 2018 в 00:43

Вы можете использовать любую из трех команд:

gedit --encoding=utf-8 filename gedit --encoding=iso-8859-15 filename gedit --encoding=utf-16 filename . . . . .
0
ответ дан 25 July 2018 в 22:59

Я думал об этом немного больше ...

Да, «ø» = 0xF8 hex * был определенно причиной того, почему gedit не откроет файл ... Почему? Потому что это не допустимый байт UTF-8. По умолчанию gedit будет открывать только файлы UTF-8 ...

Однако, gedit действительно имеет функцию автоматического обнаружения кодовой страницы, но сначала вы должны добавить кодовые страницы в свой список «возможно».

Ярко-красное диалоговое окно, которое появляется, когда Добавить не может распознать кодовую страницу, имеет на нем топик, который позволяет вам gedit еще одна кодовая страница ...

Проблема решена! ... почти ...

Хлопчатая проблема теперь снова поднимает голову ... Какая кодовая страница?

В моей ситуации я могу уверенно предположить, что это стандартная английская кодовая страница Windows (для моего региона? или для региона происхождения файла? .. Я упоминал «knarly» :) .. ..

Во всяком случае, почти позволит вам загружать файл, как только вы добавили кодовую страницу в свой список ...

Итак, хотя все Команды терминала полезны и интересны сами по себе, кажется, что эта линия мысли шла по неправильному пути.

В этих файлах нет ничего . В этих файлах добавлено ... Проблема, по-видимому, связана исключительно с кодовыми страницами.

gedit может открыть файл, как gvim. ... но соответствующую кодировку сначала необходимо добавить в ее список кодовых страниц. например. через диалог File-Open или с красным предупреждением, с которым я столкнулся.

0
ответ дан 25 July 2018 в 22:59
  • 1
    если у вас нет подсказки, есть ли способ «обнаружить», от терминала, какая кодовая страница вам нужна? – carnendil 14 February 2013 в 06:07
  • 2
    Попытка установить, какая кодовая страница была предназначена для оригинального автора, во многих ситуациях невозможна. Подмножества из нескольких кодовых страниц часто совпадают и создают "действительный" (для этой кодовой страницы и этого текста). Соответствующая кодовая страница может быть технически действительна, но текст может отображаться как неправильный символ. В этих случаях это действительно требует, чтобы текст был прочтен человеком! – Peter.O 15 February 2013 в 22:55
  • 3
    Что касается способов обнаружения кодовой страницы через терминал; iconv и recode могут использоваться, но они неуклюжи, так как часто существует несколько «действительных» возможности. Вам нужно просто проверять кодовые страницы (действительные и недействительные) до тех пор, пока не найдете подходящую кодовую страницу технически ... Я просто использую вместо этого emacs ... который, кстати, доступен для сценариев. то есть. Вы можете вызвать скрипт emac elisp из сценария bash (так же, как вы можете называть awk ). – Peter.O 15 February 2013 в 23:22

Gedit может определить правильный набор символов только в том случае, если он указан в «кодировке с открытым файлом». Вы можете изменить этот список, но имейте в виду, что порядок важен.

1
ответ дан 25 July 2018 в 22:59

Вы можете использовать любую из трех команд:

gedit --encoding=utf-8 filename gedit --encoding=iso-8859-15 filename gedit --encoding=utf-16 filename . . . . .
0
ответ дан 27 July 2018 в 01:52

Я думал об этом немного больше ...

Да, «ø» = 0xF8 hex * был определенно причиной того, почему gedit не откроет файл ... Почему? Потому что это не допустимый байт UTF-8. По умолчанию gedit будет открывать только файлы UTF-8 ...

Однако, gedit действительно имеет функцию автоматического обнаружения кодовой страницы, но сначала вы должны добавить кодовые страницы в свой список «возможно».

Ярко-красное диалоговое окно, которое появляется, когда Добавить не может распознать кодовую страницу, имеет на нем топик, который позволяет вам gedit еще одна кодовая страница ...

Проблема решена! ... почти ...

Хлопчатая проблема теперь снова поднимает голову ... Какая кодовая страница?

В моей ситуации я могу уверенно предположить, что это стандартная английская кодовая страница Windows (для моего региона? или для региона происхождения файла? .. Я упоминал «knarly» :) .. ..

Во всяком случае, почти позволит вам загружать файл, как только вы добавили кодовую страницу в свой список ...

Итак, хотя все Команды терминала полезны и интересны сами по себе, кажется, что эта линия мысли шла по неправильному пути.

В этих файлах нет ничего . В этих файлах добавлено ... Проблема, по-видимому, связана исключительно с кодовыми страницами.

gedit может открыть файл, как gvim. ... но соответствующую кодировку сначала необходимо добавить в ее список кодовых страниц. например. через диалог File-Open или с красным предупреждением, с которым я столкнулся.

0
ответ дан 27 July 2018 в 01:52
  • 1
    если у вас нет подсказки, есть ли способ «обнаружить», от терминала, какая кодовая страница вам нужна? – carnendil 14 February 2013 в 06:07
  • 2
    Попытка установить, какая кодовая страница была предназначена для оригинального автора, во многих ситуациях невозможна. Подмножества из нескольких кодовых страниц часто совпадают и создают "действительный" (для этой кодовой страницы и этого текста). Соответствующая кодовая страница может быть технически действительна, но текст может отображаться как неправильный символ. В этих случаях это действительно требует, чтобы текст был прочтен человеком! – Peter.O 15 February 2013 в 22:55
  • 3
    Что касается способов обнаружения кодовой страницы через терминал; iconv и recode могут использоваться, но они неуклюжи, так как часто существует несколько «действительных» возможности. Вам нужно просто проверять кодовые страницы (действительные и недействительные) до тех пор, пока не найдете подходящую кодовую страницу технически ... Я просто использую вместо этого emacs ... который, кстати, доступен для сценариев. то есть. Вы можете вызвать скрипт emac elisp из сценария bash (так же, как вы можете называть awk ). – Peter.O 15 February 2013 в 23:22

Gedit может определить правильный набор символов только в том случае, если он указан в «кодировке с открытым файлом». Вы можете изменить этот список, но имейте в виду, что порядок важен.

1
ответ дан 27 July 2018 в 01:52

Вы можете использовать любую из трех команд:

gedit --encoding=utf-8 filename gedit --encoding=iso-8859-15 filename gedit --encoding=utf-16 filename . . . . .
0
ответ дан 31 July 2018 в 12:53

Я думал об этом немного больше ...

Да, «ø» = 0xF8 hex * был определенно причиной того, почему gedit не откроет файл ... Почему? Потому что это не допустимый байт UTF-8. По умолчанию gedit будет открывать только файлы UTF-8 ...

Однако, gedit действительно имеет функцию автоматического обнаружения кодовой страницы, но сначала вы должны добавить кодовые страницы в свой список «возможно».

Ярко-красное диалоговое окно, которое появляется, когда Добавить не может распознать кодовую страницу, имеет на нем топик, который позволяет вам gedit еще одна кодовая страница ...

Проблема решена! ... почти ...

Хлопчатая проблема теперь снова поднимает голову ... Какая кодовая страница?

В моей ситуации я могу уверенно предположить, что это стандартная английская кодовая страница Windows (для моего региона? или для региона происхождения файла? .. Я упоминал «knarly» :) .. ..

Во всяком случае, почти позволит вам загружать файл, как только вы добавили кодовую страницу в свой список ...

Итак, хотя все Команды терминала полезны и интересны сами по себе, кажется, что эта линия мысли шла по неправильному пути.

В этих файлах нет ничего . В этих файлах добавлено ... Проблема, по-видимому, связана исключительно с кодовыми страницами.

gedit может открыть файл, как gvim. ... но соответствующую кодировку сначала необходимо добавить в ее список кодовых страниц. например. через диалог File-Open или с красным предупреждением, с которым я столкнулся.

0
ответ дан 31 July 2018 в 12:53
  • 1
    если у вас нет подсказки, есть ли способ «обнаружить», от терминала, какая кодовая страница вам нужна? – carnendil 14 February 2013 в 06:07
  • 2
    Попытка установить, какая кодовая страница была предназначена для оригинального автора, во многих ситуациях невозможна. Подмножества из нескольких кодовых страниц часто совпадают и создают "действительный" (для этой кодовой страницы и этого текста). Соответствующая кодовая страница может быть технически действительна, но текст может отображаться как неправильный символ. В этих случаях это действительно требует, чтобы текст был прочтен человеком! – Peter.O 15 February 2013 в 22:55
  • 3
    Что касается способов обнаружения кодовой страницы через терминал; iconv и recode могут использоваться, но они неуклюжи, так как часто существует несколько «действительных» возможности. Вам нужно просто проверять кодовые страницы (действительные и недействительные) до тех пор, пока не найдете подходящую кодовую страницу технически ... Я просто использую вместо этого emacs ... который, кстати, доступен для сценариев. то есть. Вы можете вызвать скрипт emac elisp из сценария bash (так же, как вы можете называть awk ). – Peter.O 15 February 2013 в 23:22

Gedit может определить правильный набор символов только в том случае, если он указан в «кодировке с открытым файлом». Вы можете изменить этот список, но имейте в виду, что порядок важен.

1
ответ дан 31 July 2018 в 12:53

Вы можете использовать любую из трех команд:

gedit --encoding=utf-8 filename gedit --encoding=iso-8859-15 filename gedit --encoding=utf-16 filename . . . . .
0
ответ дан 2 August 2018 в 04:21

Я думал об этом немного больше ...

Да, «ø» = 0xF8 hex * был определенно причиной того, почему gedit не откроет файл ... Почему? Потому что это не допустимый байт UTF-8. По умолчанию gedit будет открывать только файлы UTF-8 ...

Однако, gedit действительно имеет функцию автоматического обнаружения кодовой страницы, но сначала вы должны добавить кодовые страницы в свой список «возможно».

Ярко-красное диалоговое окно, которое появляется, когда Добавить не может распознать кодовую страницу, имеет на нем топик, который позволяет вам gedit еще одна кодовая страница ...

Проблема решена! ... почти ...

Хлопчатая проблема теперь снова поднимает голову ... Какая кодовая страница?

В моей ситуации я могу уверенно предположить, что это стандартная английская кодовая страница Windows (для моего региона? или для региона происхождения файла? .. Я упоминал «knarly» :) .. ..

Во всяком случае, почти позволит вам загружать файл, как только вы добавили кодовую страницу в свой список ...

Итак, хотя все Команды терминала полезны и интересны сами по себе, кажется, что эта линия мысли шла по неправильному пути.

В этих файлах нет ничего . В этих файлах добавлено ... Проблема, по-видимому, связана исключительно с кодовыми страницами.

gedit может открыть файл, как gvim. ... но соответствующую кодировку сначала необходимо добавить в ее список кодовых страниц. например. через диалог File-Open или с красным предупреждением, с которым я столкнулся.

0
ответ дан 2 August 2018 в 04:21
  • 1
    если у вас нет подсказки, есть ли способ «обнаружить», от терминала, какая кодовая страница вам нужна? – carnendil 14 February 2013 в 06:07
  • 2
    Попытка установить, какая кодовая страница была предназначена для оригинального автора, во многих ситуациях невозможна. Подмножества из нескольких кодовых страниц часто совпадают и создают "действительный" (для этой кодовой страницы и этого текста). Соответствующая кодовая страница может быть технически действительна, но текст может отображаться как неправильный символ. В этих случаях это действительно требует, чтобы текст был прочтен человеком! – Peter.O 15 February 2013 в 22:55
  • 3
    Что касается способов обнаружения кодовой страницы через терминал; iconv и recode могут использоваться, но они неуклюжи, так как часто существует несколько «действительных» возможности. Вам нужно просто проверять кодовые страницы (действительные и недействительные) до тех пор, пока не найдете подходящую кодовую страницу технически ... Я просто использую вместо этого emacs ... который, кстати, доступен для сценариев. то есть. Вы можете вызвать скрипт emac elisp из сценария bash (так же, как вы можете называть awk ). – Peter.O 15 February 2013 в 23:22

Gedit может определить правильный набор символов только в том случае, если он указан в «кодировке с открытым файлом». Вы можете изменить этот список, но имейте в виду, что порядок важен.

1
ответ дан 2 August 2018 в 04:21

Gedit может определить правильный набор символов только в том случае, если он указан в «кодировке с открытым файлом». Вы можете изменить этот список, но имейте в виду, что порядок важен.

1
ответ дан 4 August 2018 в 20:52

Вы можете использовать любую из трех команд:

  gedit --encoding = utf-8 filename gedit --encoding = iso-8859-15 filename gedit --encoding = utf-  16 имя файла.  ,  ,  ,  ,   
0
ответ дан 4 August 2018 в 20:52

Я думал об этом немного больше ...

Да, «ø» = 0xF8 hex * был определенно причиной того, почему gedit не откроет файл ... Почему? Потому что это не допустимый байт UTF-8. По умолчанию gedit будет открывать только файлы UTF-8 ...

Однако gedit имеет функцию автоматического обнаружения кодовой страницы, но сначала вы должны добавить кодовые страницы в свой список «Возможностей».

Яркое красное диалоговое окно, которое появляется, когда gedit не может распознать кодовую страницу, имеет на нем топик, который позволяет вам добавить другую кодовую страницу ...

Проблема решена! ... почти ...

Хвосткий вопрос теперь снова поднимает голову ... Какая кодовая страница?

В моей ситуации я могу уверенно предположить, что это стандартная английская кодовая страница Windows (для моего региона? или для региона происхождения файла? .. Я упоминал «knarly» :) .. ..

Во всяком случае, gedit позволит вам загрузить файл после того, как вы добавили кодовую страницу в свой список ...

Итак, хотя все команды терминала полезны и интересны в сами по себе, кажется, что эта линия мысли шла по неправильному пути.

В этих файлах нет ничего по-настоящему неправильного ... Проблема, судя по всему, касается кодовых страниц.

gedit может открыть файл, как gvim. ... но соответствующую кодировку сначала необходимо добавить в ее список кодовых страниц. например. через диалог File-Open или с красным предупреждением, с которым я столкнулся.

0
ответ дан 4 August 2018 в 20:52

Gedit может определить правильный набор символов только в том случае, если он указан в «кодировке с открытым файлом». Вы можете изменить этот список, но имейте в виду, что порядок важен.

1
ответ дан 6 August 2018 в 04:26

Вы можете использовать любую из трех команд:

  gedit --encoding = utf-8 filename gedit --encoding = iso-8859-15 filename gedit --encoding = utf-  16 имя файла.  ,  ,  ,  ,   
0
ответ дан 6 August 2018 в 04:26

Другие вопросы по тегам:

Похожие вопросы: