Спец курс (Автоматизация процесса проектирования)/Практические задания 3 — различия между версиями
Материал из Wiki
				
								
				
				
																
				
				
								
				ANA  (обсуждение | вклад) м (Содержимое страницы заменено на «{{BASH}} == Перед выполнение ознакомиться с правилами оформления задания == *…»)  | 
			Vidokq  (обсуждение | вклад)   (→Перед выполнение ознакомиться с правилами оформления задания)  | 
			||
| Строка 2: | Строка 2: | ||
== Перед выполнение ознакомиться с правилами оформления задания ==  | == Перед выполнение ознакомиться с правилами оформления задания ==  | ||
* [[Спец курс (Автоматизация процесса проектирования)/Практические задания (Пример)]]  | * [[Спец курс (Автоматизация процесса проектирования)/Практические задания (Пример)]]  | ||
| + | # Двойное пространство между строками   | ||
| + | # Двойное пространство между строками исключая пустые строки (на выходе содержатся не больше одной пустой строки между двумя строками с текстом)   | ||
| + | # Тройное пространство между строками   | ||
| + | # Удалить каждую вторую строку   | ||
| + | # Вставить пустую строку перед каждой строкой соответствующей регулярному выражению "regex"   | ||
| + | # Вставить пустую строку после каждой строки соответствующей регулярному выражению "regex"   | ||
| + | # Вставить пустую строку перед и после каждой строки соответствующей регулярному выражению "regex"   | ||
| + | # Нумерация каждой стоки в файле filename. Используя отступ (tab) (смотрите примечание по '\t' в конце документа) вместо пустой строки   | ||
| + | # Нумерация каждой строки в файле filename (номер слева, выравненный по правому краю)   | ||
| + | # Нумерация каждой строки в файле filename, с выводом номера только для не пустых строк   | ||
| + | # Подсчет строк (эмуляция "wc -l")   | ||
| + | # Преобразование и замена текста   | ||
| + | # Удалить все пробелы и символы табуляции в начале каждой строки файла (смотрите примечание по табуляции в конце документа)   | ||
| + | # Удалить все пробелы и символы табуляции в конце каждой строки файла (смотрите примечание по табуляции в конце документа)   | ||
| + | # Удалить все пробелы и символы табуляции в начале и конце каждой строки файла (смотрите примечание по табуляции в конце документа)   | ||
| + | # Вставить 5 пробелов в начале каждой строки (создать смещение страницы)   | ||
| + | # Расположить весь текст по правому краю столбца шириной в 79 символов   | ||
| + | # (устанавливает как 78 плюс 1 пробельный символ)   | ||
| + | # Центрировать весь текст посередине столбца шириной 79 символов. В версии 1, пробелы добавляются в начало и конец строки. В версии 2, пробелы добовляются только в начало строки   | ||
| + | # Поиск и замеа "foo" на "bar" в каждой строке   | ||
| + | # (замена только первого совпадения в строке)   | ||
| + | # (замена первых 4рех совпадений в строке)   | ||
| + | # (замена ВСЕХ совпадений в строке)   | ||
| + | # (замена предпоследнего совпадения)   | ||
| + | # (замена только последнего совпадения)   | ||
| + | # Замена "foo" на "bar" ТОЛЬКО для строк содержащих "baz"   | ||
| + | # Замена "foo" на "bar" ИСКЛЮЧАЯ строки содержащие "baz"   | ||
| + | # Замена "scarlet" или "ruby", или "puce" на "red"   | ||
| + | # Перевернуть последовательность строк (эмуляция "tac")   | ||
| + | # Перевернуть каждую строку в файле задом наперед (эмуляция "rev")   | ||
| + | # Соединить каждую пару строк бок о бок (подобно "paste")   | ||
| + | # Если линия заканчивается обратной косой чертой "\", то присоединить следующую линию   | ||
| + | # Если линия начинается с знака "=", то присоединить ее к предыдущей линии и заменить "=" пробелом   | ||
| + | # Добавить запятые к строке из чисел, изменяя "1234567" на "1,234,567"   | ||
| + | # Добавить запятые к числу с десятичной частью и знаком минуса (GNU sed)   | ||
| + | # Добавить пустую строку через каждые 5 строк (после строк 5, 10, 15, 20, и т.д.)   | ||
| + | # Выборочная печать некоторых строк   | ||
| + | # Печатать первые 10 линий файла (эмуляция "head")   | ||
| + | # Печатать первую строку файла (эмуляция "head -1")   | ||
| + | # Печатать последние 10 строк файла (эмуляция "tail")   | ||
| + | # Печатать последние 2 строки файла (эмуляция "tail -2")   | ||
| + | # Печатать последнюю строку файла (эмуляция "tail -1")   | ||
| + | # Печатать предпоследнюю строку в файле   | ||
| + | # Печатать только те строки, которые совпадают с регулярным выражением (эмуляция "grep")   | ||
| + | # Печатать только те строки, которые НЕ совпадают с регулярным выражением (эмуляция "grep -v")   | ||
| + | # Печатать строку непосредственно перед регулярным выражением, но не печатать строку содержащую регулярное выражение   | ||
| + | # Печатать строку непосредственно после регулярного выражения, но не печатать строку содержащую регулярное выражение   | ||
| + | # Печатать по одной строке перед и после регулярного выражения, с указанием номера строки совпадающей с регулярным выражением (симуляция "grep -A1 -B1")   | ||
| + | # Печать строк, совпадающих с регулярными выражениями AAA, BBB и CCC одновременно (в любой последовательности)   | ||
| + | # Печать строк, совпадающих с регулярными выражениями AAA, BBB и CCC одновременно (в конкретной последовательности)   | ||
| + | # Печать строк, совпадающих с любым регулярным выражением AAA или BBB, или CCC (эмуляция "egrep")   | ||
| + | # Печатать абзац если он содержит AAA (пустая строка разделяет абзацы) (в HHsed v1.5 необходимо вставить 'G;' после 'x;')   | ||
| + | # Печатать абзац если он содержит AAA, BBB и CCC (в любой последовательности) (в HHsed v1.5 необходимо вставить 'G;' после 'x;')   | ||
| + | # Печатать абзац если он содержит AAA или BBB, или CCC (в HHsed v1.5 необходимо вставить 'G;' после 'x;')   | ||
| + | # Печатать строки длиной равной или большей 65 символов   | ||
| + | # Печатать строки длиной меньше или равной 65 символов   | ||
| + | # Печатать часть файла начиная от совпадения с регулярным выражением и до конца файла   | ||
| + | # Печатать часть файла основываясь на номерах строк (строки 8-12, включительно)   | ||
| + | # Печатать строку под номером 52   | ||
| + | # Начиная с 3ей строки печатать каждую седьмую строку в файле   | ||
| + | # Печатать часть файла между двумя регулярными выражениями (включительно)   | ||
| + | # Избирательное удаление определенных строк   | ||
| + | # Печатать все линии ИСКЛЮЧАЯ часть между двумя регулярными выражениями   | ||
| + | # Удалить дубликаты последовательных строк в файле (эмуляция "uniq"). Первая строка в наборе дубликатах строк удерживается от удаления   | ||
| + | # Удалить дубликаты непоследовательных строк в файле. Остерегайтесь переполнения буфера или используйте GNU sed   | ||
| + | # Печатать только дубликаты строк (эмуляция "uniq -d")   | ||
| + | # Удалить первые 10 строк в файле   | ||
| + | # Удалить последнюю строку в файле   | ||
| + | # Удалить 2 последние строки файла   | ||
| + | # Удалить последние 10 строк файла   | ||
| + | # Удалить каждую восьмую строку в файле   | ||
| + | # Удалить строки совпадающие с регулярным выражением   | ||
| + | # Удалить ВСЕ пустрые строки из файла (эмуляция "grep '.' ")   | ||
| + | # Удалить все последовательности пустых строк из файла исключая первую. Также удалить все пустые строки в начале и в конце файла (эмуляция "cat -s")   | ||
| + | # (Версия 1, допускается 0 пустых строк в начале и 1 в конце файла)   | ||
| + | # (Версия 2, допускается 1 пустая строка в начале и 0 в конце файла)   | ||
| + | # Оставить последовательность пустых строк не более двух одновременно   | ||
| + | # Удалить все пустые строки в начале файла   | ||
| + | # Удалить все пустые строки в конце файла   | ||
| + | # Удалить последнюю непустую строку в каждом абзаце   | ||
| + | # Отсортировать абзацы файла в алфавитном порядке. Абзацы разделены пустой строкой.  | ||
Версия 03:21, 31 марта 2018
Перед выполнение ознакомиться с правилами оформления задания
- Двойное пространство между строками
 - Двойное пространство между строками исключая пустые строки (на выходе содержатся не больше одной пустой строки между двумя строками с текстом)
 - Тройное пространство между строками
 - Удалить каждую вторую строку
 - Вставить пустую строку перед каждой строкой соответствующей регулярному выражению "regex"
 - Вставить пустую строку после каждой строки соответствующей регулярному выражению "regex"
 - Вставить пустую строку перед и после каждой строки соответствующей регулярному выражению "regex"
 - Нумерация каждой стоки в файле filename. Используя отступ (tab) (смотрите примечание по '\t' в конце документа) вместо пустой строки
 - Нумерация каждой строки в файле filename (номер слева, выравненный по правому краю)
 - Нумерация каждой строки в файле filename, с выводом номера только для не пустых строк
 - Подсчет строк (эмуляция "wc -l")
 - Преобразование и замена текста
 - Удалить все пробелы и символы табуляции в начале каждой строки файла (смотрите примечание по табуляции в конце документа)
 - Удалить все пробелы и символы табуляции в конце каждой строки файла (смотрите примечание по табуляции в конце документа)
 - Удалить все пробелы и символы табуляции в начале и конце каждой строки файла (смотрите примечание по табуляции в конце документа)
 - Вставить 5 пробелов в начале каждой строки (создать смещение страницы)
 - Расположить весь текст по правому краю столбца шириной в 79 символов
 - (устанавливает как 78 плюс 1 пробельный символ)
 - Центрировать весь текст посередине столбца шириной 79 символов. В версии 1, пробелы добавляются в начало и конец строки. В версии 2, пробелы добовляются только в начало строки
 - Поиск и замеа "foo" на "bar" в каждой строке
 - (замена только первого совпадения в строке)
 - (замена первых 4рех совпадений в строке)
 - (замена ВСЕХ совпадений в строке)
 - (замена предпоследнего совпадения)
 - (замена только последнего совпадения)
 - Замена "foo" на "bar" ТОЛЬКО для строк содержащих "baz"
 - Замена "foo" на "bar" ИСКЛЮЧАЯ строки содержащие "baz"
 - Замена "scarlet" или "ruby", или "puce" на "red"
 - Перевернуть последовательность строк (эмуляция "tac")
 - Перевернуть каждую строку в файле задом наперед (эмуляция "rev")
 - Соединить каждую пару строк бок о бок (подобно "paste")
 - Если линия заканчивается обратной косой чертой "\", то присоединить следующую линию
 - Если линия начинается с знака "=", то присоединить ее к предыдущей линии и заменить "=" пробелом
 - Добавить запятые к строке из чисел, изменяя "1234567" на "1,234,567"
 - Добавить запятые к числу с десятичной частью и знаком минуса (GNU sed)
 - Добавить пустую строку через каждые 5 строк (после строк 5, 10, 15, 20, и т.д.)
 - Выборочная печать некоторых строк
 - Печатать первые 10 линий файла (эмуляция "head")
 - Печатать первую строку файла (эмуляция "head -1")
 - Печатать последние 10 строк файла (эмуляция "tail")
 - Печатать последние 2 строки файла (эмуляция "tail -2")
 - Печатать последнюю строку файла (эмуляция "tail -1")
 - Печатать предпоследнюю строку в файле
 - Печатать только те строки, которые совпадают с регулярным выражением (эмуляция "grep")
 - Печатать только те строки, которые НЕ совпадают с регулярным выражением (эмуляция "grep -v")
 - Печатать строку непосредственно перед регулярным выражением, но не печатать строку содержащую регулярное выражение
 - Печатать строку непосредственно после регулярного выражения, но не печатать строку содержащую регулярное выражение
 - Печатать по одной строке перед и после регулярного выражения, с указанием номера строки совпадающей с регулярным выражением (симуляция "grep -A1 -B1")
 - Печать строк, совпадающих с регулярными выражениями AAA, BBB и CCC одновременно (в любой последовательности)
 - Печать строк, совпадающих с регулярными выражениями AAA, BBB и CCC одновременно (в конкретной последовательности)
 - Печать строк, совпадающих с любым регулярным выражением AAA или BBB, или CCC (эмуляция "egrep")
 - Печатать абзац если он содержит AAA (пустая строка разделяет абзацы) (в HHsed v1.5 необходимо вставить 'G;' после 'x;')
 - Печатать абзац если он содержит AAA, BBB и CCC (в любой последовательности) (в HHsed v1.5 необходимо вставить 'G;' после 'x;')
 - Печатать абзац если он содержит AAA или BBB, или CCC (в HHsed v1.5 необходимо вставить 'G;' после 'x;')
 - Печатать строки длиной равной или большей 65 символов
 - Печатать строки длиной меньше или равной 65 символов
 - Печатать часть файла начиная от совпадения с регулярным выражением и до конца файла
 - Печатать часть файла основываясь на номерах строк (строки 8-12, включительно)
 - Печатать строку под номером 52
 - Начиная с 3ей строки печатать каждую седьмую строку в файле
 - Печатать часть файла между двумя регулярными выражениями (включительно)
 - Избирательное удаление определенных строк
 - Печатать все линии ИСКЛЮЧАЯ часть между двумя регулярными выражениями
 - Удалить дубликаты последовательных строк в файле (эмуляция "uniq"). Первая строка в наборе дубликатах строк удерживается от удаления
 - Удалить дубликаты непоследовательных строк в файле. Остерегайтесь переполнения буфера или используйте GNU sed
 - Печатать только дубликаты строк (эмуляция "uniq -d")
 - Удалить первые 10 строк в файле
 - Удалить последнюю строку в файле
 - Удалить 2 последние строки файла
 - Удалить последние 10 строк файла
 - Удалить каждую восьмую строку в файле
 - Удалить строки совпадающие с регулярным выражением
 - Удалить ВСЕ пустрые строки из файла (эмуляция "grep '.' ")
 - Удалить все последовательности пустых строк из файла исключая первую. Также удалить все пустые строки в начале и в конце файла (эмуляция "cat -s")
 - (Версия 1, допускается 0 пустых строк в начале и 1 в конце файла)
 - (Версия 2, допускается 1 пустая строка в начале и 0 в конце файла)
 - Оставить последовательность пустых строк не более двух одновременно
 - Удалить все пустые строки в начале файла
 - Удалить все пустые строки в конце файла
 - Удалить последнюю непустую строку в каждом абзаце
 - Отсортировать абзацы файла в алфавитном порядке. Абзацы разделены пустой строкой.