Два ограничения для знания об этом, с которым я столкнулся:
Наследованные Объекты не могут иметь Свойств Навигации - т.е. если у Вас есть класс "человека" и затем "клиент" и "поставщик" те, у клиента и поставщиков cannont есть свойства Navigation.
Методы и Вычисляемые поля (что-либо в частичных классах) не передаются по Услугам передачи данных ADO.NET - если Вы будете также использовать Услуги передачи данных ADO.NET что-нибудь, что Вы разворачиваете, то объекты Платформы Объекта на в частичных классах не будут переданы по Услугам передачи данных ADO.NET.
Это обычно не объекты выставочного стопора (для свойств навигации, мы просто не используем наследование на платформе объекта, на данный момент), но могло бы быть что-то вроде интереса для себя. Я даю надежду, что будущий выпуск включит оба из этих объектов.
awk '!seen[$0]++' file.txt
seen
- это ассоциативный массив, в который Awk будет передавать каждую строку файла. Если строки нет в массиве, то seen [$ 0]
будет оцениваться как false. !
является логическим оператором НЕ и преобразует ложное в истинное. Awk напечатает строки, в которых выражение оценивается как истинное. ++
увеличивает видимый
, так что видно [$ 0] == 1
после первого обнаружения строки, а затем видно [$ 0] = = 2
и т. Д.
Awk оценивает все, кроме 0
и ""
(пустая строка) как истину. Если в seen
помещена повторяющаяся строка, то ! Seen [$ 0]
будет оцениваться как ложь, и строка не будет записана в вывод.
Из http://sed.sourceforge.net/sed1line.txt : (Пожалуйста, не спрашивайте меня, как это работает ;-))
# delete duplicate, consecutive lines from a file (emulates "uniq").
# First line in a set of duplicate lines is kept, rest are deleted.
sed '$!N; /^\(.*\)\n\1$/!P; D'
# delete duplicate, nonconsecutive lines from a file. Beware not to
# overflow the buffer size of the hold space, or else use GNU sed.
sed -n 'G; s/\n/&&/; /^\([ -~]*\n\).*\n\1/d; s/\n//; h; P'