Файл: Доценту кафедры икд.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 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 Аплатонов Р.С.