ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 12.12.2023
Просмотров: 16
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Доценту кафедры ИКД
Громову В.В.
Лабораторная работа №2
Я, Аплатонов Ростислав Станиславович, в ходе лабораторной работы №2 осуществлял создание и перекодировку текстовых файлов, и объединение их с использованием sh скрипта в ОС Debian и с помощью bat скрипта в Windows.
Для создания и заполнения файла со скриптом использовался текстовый редактор nano (Рис. 1). nano — консольный текстовый редактор для UNIX и Unix-подобных операционных систем, основанный на библиотеке curses и распространяемый под лицензией GNU GPL.
Рисунок 1- Создание файла script.sh.
При помощи команды echo (выводит текст или строку на стандартный вывод или перенаправляет вывод в файл) создается и заполняется файл IST-012_Aplatonov_RS_UTF-8.txt. На основе этого файла создаются файлы в других кодировках, а именно: CP1251, 866, KOI-8 (Рис. 2). Выполняется это с помощью команды перекодировки iconv, которая имеет следующий синтаксис:
iconv [-c] [-s] [-f ] [-t] [принимаемый файл] [-o выходной файл], где
-c – символы, которые не могут быть преобразованы, просто выбрасываются.
-s – сообщения об ошибках не выводятся.
-f – входная кодировка.
-t – выходная кодировка.
Рисунок 2 – Текст sh скрипта.
Рисунок 3 – Запуск скрипта.
Чтобы просмотреть кодировку созданных файлов используется команда enca (Рис. 4). Скрипт сработал корректно, в результате чего создались файлы в нужных кодировках.
Рисунок 4 – кодировки созданных файлов.
Для объединения файлов используется команда cat (утилита UNIX, выводящая последовательно указанные файлы (или устройства), таким образом, объединяя их в единый поток. Если вместо имени файла указывается «-», то читается стандартный ввод.) (Рис. 5):
Рисунок 5 – Объединение файлов.
В итоговый файл записалось 4 строки (Рис. 6).
Рисунок 6 – Итоговый файл.
При этом распознать кодировку невозможно (Рис. 7).
Рисунок 7 – Проверка кодировки.
Для Windows нужен следующий скрипт (рис. 8).
Рисунок 8. Текст bat скрипта
Для запоминания контента и названия файла, который нужно перекодировать используется переменная content и filename соответственно.
Перекодировка происходит с помощью команды chcp, которая изменяет кодовую страницу активной консоли. При использовании без параметров chcp отображает номер активной кодовой страницы консоли.
Имеет следующий синтаксис:
chcp [номер кодировки]
Для объединения файлов используется команда copy имеющая следующий синтаксис:
copy [файл 1] + [файл …] + [файл n] [итоговый файл]
После работы скрипта корректный текст выводится только в файле с 866 кодировкой.
Рисунок 9. Кодировка 866
Рисунок 10. Кодировка СР1251
Рисунок 11. Кодировка KOI-8
Рисунок 12. Кодировка UTF-8
При этом в итоговом файле весь текст некорректен, включая текст из файла с 866 кодировкой (рис. 13).
Рисунок 13. Итоговый файл
Во время лабораторной работы был создан файл с текстом, который был перекодирован в 3 разные кодировки, после эти файлы были объединены в 1 файл, при этом текст в последнем был некорректен, и кодировку распознать не удалось, из чего можно сделать вывод, что для объединения нескольких текстовых файлов стоит сначала уточнить соответствие их кодировок, и в случае несоответствия перекодировать файлы отдельно друг от друга.
Студент группы ИСТ-012 Аплатонов Р.С.