Скрипт под Unix
Вся беда в том что предмет буквально только начали читать и толком еще ничего не объяснили.В общем если сможете помогите пожалуйста.
Задача состоит в следующем:
Из всех файлов каталога /etc выделить 5 - й рядок, собрать все эти рядки в один файл и отсортировать его.Отослать преподавателю уведомление с этими результатами.
Вот такая вот задачка. Я так прикинул что тут трубу надо писать, но как именно это сделать я не знаю.В общем если кто сможет помогите пожалуйста!!!
что такое 5ый рядок?? и если нужно выделить одна 5ый рядок, то как "все эти рядки в один файл"????
Я думаю здесь нужно из каждого файла в каталоге /etc выделить 5 - ю строку и дальше все остальное задание.
Код:
dir="/etc/"; for f in `ls -l /etc/ | grep ^- | awk '{print $NF}'`; do awk 'NR == 5' $dir$f; done | sort
осталось ток всё это дело "отослать преподавателю" если б ты сказал как, можно было бы подумать.
единственное что - это штука она симлинки пропускает
спасибо огромное!!!Просто выручил.Как только смогу добавлю тебе тучу репутации
К примеру что тут используется цикл for: for <переменная> in <список значений>do<список команд> done - это я еще както понял, но вот есть одна деталь которой я не совсем понимаю а именно переменные NF и NR , как они между собой взаимо связаны???У меня конечно есть предположение что они сравниваются как шаблон с помощю awk, но это всего лишь догадки.Если сможите ответьте на мой вопрос!!!
http://www.lissyara.su/?id=1492
"NF - число полей в данной записи" в данном случае читай кол-во слов
"NR - порядковый номер текущей записи" читай номер строки
"NF - число полей в данной записи" в данном случае читай кол-во слов
"NR - порядковый номер текущей записи" читай номер строки