Форум программистов, компьютерный форум, киберфорум
Shell, Bash
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 21.03.2013
Сообщений: 48
1

Как вывести определённые поля из /etc/passwd с помощью awk?

04.05.2013, 03:41. Показов 3347. Ответов 4
Метки нет (Все метки)

Здравствуйте, помогите пожалуйста разобраться с работой потокового редактора sed и утилитой awk.
2. По поводу awk, как вывести имена, идентификаторы и домашние каталоги пользователей из файла /etc/passwd, разделяя их табуляциями, в самом файле /etc/passwd поля разделить двоеточиями.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.05.2013, 03:41
Ответы с готовыми решениями:

Задание вывода из /etc/passwd с awk
Ребят, пожалуйста помогите написать данный скрипт. Нужно вывести из файла /etc/passwd все логины...

Вывести имена пользователей из /etc/passwd с помощью cut
Помогите пожалуйста. Известно,что команда cut -f1 -d: /etc/passwd выдает список имен...

Вывести 3-е поле с помощью AWK
иногда пользуюсь для разбора текстовых файлов, вот лет 7 назад пользовался последний раз, забыл...

Как с помощью awk подсчитать количество записей с начала суток?
Есть лог. Пример строки: Jul 24 22:18:48 devmaster syslog-ng: Подскажите...

4
4857 / 3278 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
04.05.2013, 09:00 2
Bash
1
awk -F: '{print $1, $3, $6}' /etc/passwd
0
0 / 0 / 0
Регистрация: 21.03.2013
Сообщений: 48
04.05.2013, 19:35  [ТС] 3
Не подскажете как подробно работает этот скрипт, в особенности не понятны слова '{print $1, $3, $6}' для чего это?
И еще как с помощью awk dывести все строки, в которых первое поле отличается от первого поля предыдущей строки?
0
13201 / 6588 / 1040
Регистрация: 10.01.2008
Сообщений: 15,069
05.05.2013, 06:53 4
gerrard89torres, man awk

-F: задает разделитель полей «:». $1, $2, ... - поле с соответствующим индексом. $0 - вся строка.
0
4857 / 3278 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
05.05.2013, 08:16 5
Цитата Сообщение от gerrard89torres Посмотреть сообщение
Не подскажете как подробно работает этот скрипт, в особенности не понятны слова '{print $1, $3, $6}' для чего это?
во-первых, это не скрипт, а вызов программы awk с переданнымыми ей аргументами
первый аргумент, в кавычках, - это текст программы для awk

man awk
Код
       AWK is a line-oriented language.  The pattern comes first, and  then  the
       action.   Action  statements are enclosed in { and }.  Either the pattern
       may be missing, or the action may be missing, but, of course,  not  both.
       If the pattern is missing, the action is executed for every single record
       of input.  A missing action is equivalent to

              { print }

       which prints the entire record.
то есть в данном случае фигурные скобки означают "действие", которое выполняется для каждой строки ввода
print - оператор "вывести"
если после print стоят аргументы через запятую, то они будут выводиться через пробел (по умолчанию)

1. из файла /etc/passwd, к примеру, берётся первая строка
2. она разделяется на поля по разделителю, и каждое поле получает свой номер
3. затем эти номера полей используются для того, чтобы указать оператору print, что нужно вывести
4. когда print вывел поля, достигается конец "действия"
5. происходит чтение следующей строки ввода, и всё то же самое повторяется для неё (переходит к пункту 2)

Не по теме:

Цитата Сообщение от gerrard89torres Посмотреть сообщение
И еще как с помощью awk dывести все строки, в которых первое поле отличается от первого поля предыдущей строки?
это какой-то другой вопрос, поэтому создай отдельную тему, чтобы свалку не устраивать



Не по теме:

Цитата Сообщение от Vovan-VE Посмотреть сообщение
gerrard89torres, man awk
это дохлый номер, он не понимает технический язык, и вообще английкого не знает

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.05.2013, 08:16

По нажатию кнопки вывести в поля определенные значения
Может кто то перевести код С++ в код Visual Basic, код мне нужен для маленькой программки которая...

Перенести 3-ю строку в начало файла с помощью awk
Здравствуйте. Как перенести в одном из текстовых файлов перенести третью от конца строку в начало...

Найти среднее арифметическое и 5 наибольших значений с помощью awk
Добрый вечер! Прошу помощи! С помощью текстового процессора awk необходимо выполнить задания: ...

Вырезать строку между 2 позициями с помощью sed и awk
Коллеги, добрый день. Помогите, пожалуйста, не могу разобраться. Не помогает даже гугл, все, что...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru