Как мы можем удалить дублирующуюся строку без сортировки?

В Вашем myScript код, существует вызов к другому внешнему названному сценарию pk_copylogs. На второй строке pk_copylogs существует предположение, что Вам назвали команду hist доступный отовсюду, т.е. в одном из каталогов, включенных в Ваш $PATH переменная.

Наиболее вероятная причина этой проблемы в большинстве оболочек, я работал, с которым я не должен был настраивать свои ярлыки, но кто-то до меня сделал, команда hist искажается для управления history в целях удобства. Но когда Вы запускаете сценарий оболочки, тот псевдоним идет из окна. Конечно, Ваш случай мог бы полностью отличаться, но не видя фактический код этих двух сценариев Вы сослались, т.е. myScript и pk_copylogs, очень трудно сделать любые утверждения

2
24.04.2014, 16:38
3 ответа
  • Попробуйте следующее:
  • Объяснение

    NF && !($1 в a)[112612]: мы обрабатываем только ту строку, которая не является пустой строкой, а значение еще не появилось в ассоциативном массиве [112613]a[112614].

    make
    make install
    modprobe r8192se_pci
    

    a[$1][112616]: если значение не появилось, сохраняем его в ассоциативном массиве [112617]a[112618].

    enter image description here

    p=$1;print (getline == 0) ? $1 : p "\n"[112620]: сохраняем значение в переменной [112621]p[112622]. Если не конец файла, распечатать переменную [112623]p[112624] следует новой строкой, если конец файла, то просто распечатать значение [112625]p[112626].

    /bin
    /sbin
    /usr
    /lib
    /opt (if you have it)
    /etc
    

    3
    27.01.2020, 21:54

    Эта команда должна сработать.

    awk '{$1=$1}1' filename | awk ' !x[$0]++'
    

    Первая команда awk удаляет все ведущие пробелы в файле, а вторая команда awk просто печатает уникальные элементы.

    2
    27.01.2020, 21:54

    Если вы хотите удалить все дубликаты (включая повторяющиеся пустые строки)

    awk '{if ($1 in a) next; a[$1]=$0; print}' test.txt
    

    Если вы хотите сохранить повторяющиеся пустые строки

    awk '/^$/ {print; next} {if ($1 in a) next; a[$1]=$0; print}' test.txt
    
    1
    27.01.2020, 21:54

    Теги

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