Просто запустите
$ echo 1 > /proc/sys/abi/ldt16
, а затем запустите приложение через вино. Это временно разрешает поддержку 16 бит в ядре.
Чтобы напечатать определенный столбец, скажем, столбцы 1 и 4, просто запустите:
awk -F',' '{print $1, $4}' file
Команда здесь - попросить awk распечатать указанный столбец разделенных символом ','
Вы можете изменить номер столбца, добавить / удалить $ NUM для получения разных столбцов.
В сочетании с sort вы получите уникальные строки :
awk -F',' '{print $1, $4}' file | sort -u
Флаг -u удаляет повторяющиеся элементы с выхода.
Чтобы напечатать определенный столбец, скажем, столбцы 1 и 4, просто запустите:
awk -F',' '{print $1, $4}' file
Команда здесь - попросить awk распечатать указанный столбец разделенных символом ','
Вы можете изменить номер столбца, добавить / удалить $ NUM для получения разных столбцов.
В сочетании с sort вы получите уникальные строки :
awk -F',' '{print $1, $4}' file | sort -u
Флаг -u удаляет повторяющиеся элементы с выхода.
Чтобы напечатать определенный столбец, скажем, столбцы 1 и 4, просто запустите:
awk -F',' '{print $1, $4}' file
Команда здесь - попросить awk распечатать указанный столбец разделенных символом ','
Вы можете изменить номер столбца, добавить / удалить $ NUM для получения разных столбцов.
В сочетании с sort вы получите уникальные строки :
awk -F',' '{print $1, $4}' file | sort -u
Флаг -u удаляет повторяющиеся элементы с выхода.
Вы можете сделать это, объединив значения столбца в хэш-ключ, например. при условии, что ваш вход отсортирован, это однопроходное решение работает для столбца 1-3:
awk '!h[$1,$2,$3]++ { NF--; print }' FS=, OFS=, data.csv
Выход:
Col1,Col2,Col3
A,10,50
A,10,05
B,20,30
B,20,03
C,30,100
C,30,111
C,40,111
C,30,123
Для столбцов 1 и 4 выполните что-то подобное :
awk '!h[$1,$4]++ { print $1, $4 }' FS=, OFS=, data.csv
Выход:
Col1,Col4
A,2017
B,2017
C,2017
C,2016
C,2015
#!/usr/bin/env python
import sys
filename = sys.argv[1]
col_nums = sys.argv[2:]
if not col_nums:
sys.exit()
rows_unique = []
for row in open(filename).read().splitlines():
cells = row.split(',')
# Select cells in row based on given column numbers.
cells_selected = [cells[int(col_num)] for col_num in col_nums]
row_selected = ','.join(cells_selected)
if row_selected not in rows_unique:
print(row_selected)
rows_unique += [ row_selected ]
Сохранить как исполняемый скрипт, затем вызвать (обратите внимание, что столбцы нулевые индексы):
$ get_unique_rows_per_column.py file 0 2
Col1,Col3
A,50
A,05
B,30
B,03
C,100
C,111
C,123
Вы можете сделать это, объединив значения столбца в хэш-ключ, например. при условии, что ваш вход отсортирован, это однопроходное решение работает для столбца 1-3:
awk '!h[$1,$2,$3]++ { NF--; print }' FS=, OFS=, data.csv
Выход:
Col1,Col2,Col3
A,10,50
A,10,05
B,20,30
B,20,03
C,30,100
C,30,111
C,40,111
C,30,123
Для столбцов 1 и 4 выполните что-то подобное :
awk '!h[$1,$4]++ { print $1, $4 }' FS=, OFS=, data.csv
Выход:
Col1,Col4
A,2017
B,2017
C,2017
C,2016
C,2015
#!/usr/bin/env python
import sys
filename = sys.argv[1]
col_nums = sys.argv[2:]
if not col_nums:
sys.exit()
rows_unique = []
for row in open(filename).read().splitlines():
cells = row.split(',')
# Select cells in row based on given column numbers.
cells_selected = [cells[int(col_num)] for col_num in col_nums]
row_selected = ','.join(cells_selected)
if row_selected not in rows_unique:
print(row_selected)
rows_unique += [ row_selected ]
Сохранить как исполняемый скрипт, затем вызвать (обратите внимание, что столбцы нулевые индексы):
$ get_unique_rows_per_column.py file 0 2
Col1,Col3
A,50
A,05
B,30
B,03
C,100
C,111
C,123
Вы можете сделать это, объединив значения столбца в хэш-ключ, например. при условии, что ваш вход отсортирован, это однопроходное решение работает для столбца 1-3:
awk '!h[$1,$2,$3]++ { NF--; print }' FS=, OFS=, data.csv
Выход:
Col1,Col2,Col3
A,10,50
A,10,05
B,20,30
B,20,03
C,30,100
C,30,111
C,40,111
C,30,123
Для столбцов 1 и 4 выполните что-то подобное :
awk '!h[$1,$4]++ { print $1, $4 }' FS=, OFS=, data.csv
Выход:
Col1,Col4
A,2017
B,2017
C,2017
C,2016
C,2015
#!/usr/bin/env python
import sys
filename = sys.argv[1]
col_nums = sys.argv[2:]
if not col_nums:
sys.exit()
rows_unique = []
for row in open(filename).read().splitlines():
cells = row.split(',')
# Select cells in row based on given column numbers.
cells_selected = [cells[int(col_num)] for col_num in col_nums]
row_selected = ','.join(cells_selected)
if row_selected not in rows_unique:
print(row_selected)
rows_unique += [ row_selected ]
Сохранить как исполняемый скрипт, затем вызвать (обратите внимание, что столбцы нулевые индексы):
$ get_unique_rows_per_column.py file 0 2
Col1,Col3
A,50
A,05
B,30
B,03
C,100
C,111
C,123