После присоединения к пользователю AD , изменив [User @ domain @ host] на [user @ host]

С современным (версия > 4. 0) GNU awk, вы могли бы

awk '
  FNR>4 {a[$0]=$2; next}; 
  NR==FNR; 
  END {
    PROCINFO["sorted_in"] = "@val_num_asc"; 
    for (i in a) print i;
  }
' file1 file2

Пояснение:

  • FNR>4 {a[$0]=$2; next}; создать массив полей сортировки не-заголовочных строк
  • NR==FNR; оценивает TRUE только для первого файла, и достигается только для FNR>4, вызывая печать заголовочных строк для первого файла
  • PROCINFO["sorted_in"] = "@val_num_asc" отсортировать массив по значению (т.е. по хранимому полю $2)
  • for (i in a. т.е. сохраненное поле $2)
  • for (i in a) print i print indices сортированного массива (которые являются сохраненными строками без заголовков)

Тестирование

$ awk 'FNR>4 {a[$0]=$2; next}; NR==FNR; END {PROCINFO["sorted_in"] = "@val_num_asc"; for (i in a) print i;}' file1 file2
header 1
header 2
header 3

lemur    3    dd
cat    4    aa
alligator    4    ca
dog    5    ab
ostrich    10    cd
fish    13    cc
lemming    16    ad
2
10.12.2017, 17:46
1 ответ

Вместо расширения подсказки \u-вы можете попросить PS1 расширить $USER, удалив амперсанд и завершающий текст; изменить локальное или глобальное определение PS1

из:

PS1='[\u@\h \W]\$ '

-:

PS1='[${USER%@*}@\h \W]\$ '

Это допускает больше махинаций, чем (фиксированное)\uрасширение, если USER не только для чтения, но может быть приемлемым.

[bob@host ~]$ USER=notreallyroot
[notreallyroot@host ~]$ USER=notreallyroot@domain.here
[notreallyroot@host ~]$
1
27.01.2020, 22:18

Теги

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