У меня есть старый код 2003 года, который использует -tопцию для uniqкоманды. Выдает ошибку, так как эта опция, вероятно, больше не поддерживается.
Вот кусок, который использует команду:
egrep -n "{ IA32_OP" ia32-decode.c | \
awk '{ print $1 $3 $4 }' | \
sort -t '(' +1 | \
uniq -t ':' -f 1 | \
sed 's/\(.*\)\:IA32_OP(\(.*\)),/#define IA32_OP_\2 \1/g' >> ia32_opcodes.h
Что этот вариант сделал тогда? Чем я могу заменить эту команду?
man uniq, -f 1избегает сравнения первого поля. Я бы сделал вывод, -t ':'что -tпредполагается заменить полевой сепаратор с пробелов на :.
-tбыла опция, специфичная для Debian, которая позже была удалена?
uniqне было того же самого -tи -kкак сортировать или почему сортировка не имела всех uniqвстроенных функций (так как теперь имеет -u). Те -w/ -f/ -sот GNU уник не имеют смысла. Почему они не могут использовать тот же синтаксис, что и sort.