Awk: match exact string in line

pam_limits.so модуль может помочь Вам несколько.

Это позволяет Вам устанавливать определенные пределы для определенных отдельных пользователей и групп или подстановочных знаков или диапазонов пользователей и групп.

Пределы, которые можно установить, обычно являются ulimit настройками, но также и на количестве параллельных сессий входа в систему, процессов, процессорное время, приоритет по умолчанию и максимальный приоритет (renice). Проверьте limits.conf страницу справочника на больше.

Например, можно настроить пользователей VIP, чтобы иметь все их процессы, запущенные с увеличенного приоритета по умолчанию и если они - немного больше savy, можно позволить им использовать хорошее и команды renice для увеличения приоритета их важных заданий вручную также.

# /etc/security/limits.conf
# increase prio for members of the faculty group
@faculty   hard priority -10
@faculty   hard nice     -15   

pam_limits для определенного отдельного хоста и не с поддержкой кластеров.

2
02.06.2015, 11:34
3 ответа

Так как вы хотите точное совпадение, почему бы не использовать == ?

$ cat >file
a deiauk Biking US 200 G
b kespaul 202 A
c deiauk NY 222 5 Z
a auie auie 200 B
b nrst nrst 200 C

$ awk '$(NF-1)==200{a[$1]++}END{for (v in a){print  v,a[v]}}' file
a 2
b 1

Вы также можете сдерживать ваш матч с / ^ 200 $ / :

$ awk '$(NF-1)~/^200$/{a[$1]++}END{for (v in a){print  v,a[v]}}' file
a 2
b 1

Редактировать:

Я попробовал вашу команду, и она должна работать. Вы уверены в своем -F '' ?

3
27.01.2020, 21:56

С awk, просто:

awk '$0~/ 200 /' file

Или sed ( \s соответствует любому пробелу):

sed -n '/\s200\s/p' file

А решение grep (-P для жемчуга regex):

grep -P '\s200\s' file

, Если это должно быть чисто удар :

while read a; do [[ $a =~ " 200 " ]] && echo $a; done <file

, Если вы не уверены, есть ли места, счета, безотносительно ( [[: космос:]] похож \s, в sed и grep решения выше):

while read a; do [[ $a =~ [[:space:]]200[[:space:]] ]] && echo $a; done <file
2
27.01.2020, 21:56

Думаю, это поможет. {{1} } Это напечатает только строку, содержащую шаблон. В вашем случае шаблон - 200

grep '200' file-name
0
27.01.2020, 21:56

Теги

Похожие вопросы