Выполнение параллельных операций становится все более важным, поэтому я рекомендую:
parallel mv {} {.}.jpg ::: *.JPG
Эта утилита по умолчанию не установлена.
Я вижу, что ваши столбцы ограничены двумя пробелами.
, поэтому с awk:
awk -F '\\s\\s' '{print $1}'
Я вижу, что ваши столбцы ограничены двумя пробелами.
, поэтому с awk:
awk -F '\\s\\s' '{print $1}'
Я вижу, что ваши столбцы ограничены двумя пробелами.
, поэтому с awk:
awk -F '\\s\\s' '{print $1}'
Поскольку это, кажется, столбец фиксированной ширины, вы можете просто cut соответствующие символы. Самый широкий столбец Alanine, aspartate and glutamate metabolism имеет ширину 44 символа, поэтому:
$ cut -c1-44 foo
ABC transporters
Alanine, aspartate and glutamate metabolism
alpha-Linolenic acid metabolism
Aminoacyl-tRNA biosynthesis
Amino sugar and nucleotide sugar metabolism
Arachidonic acid metabolism
Поскольку второй столбец, очевидно, повторяет начало первого столбца, я беру это как критерий разреза с sed, поэтому он не зависит от ширины столбца:
sed 's/^\(.*\)\(.*\) \1$/\1\2/'
pattern - это повторяющаяся часть, обратная ссылка как \1 в конце строки. Вы можете добавить ;s/ *$//, чтобы удалить конечные пробелы, если они вас беспокоят.
Основываясь на ответе Муру на то, что столбец задан с фиксированной шириной, команда egrep с опцией -o позволит вам печатать только согласованные (непустые) части соответствующей строки, заданной шаблоном поиска. По умолчанию, однако, будет напечатана целая строка.
$ egrep -o "^.{44}" foo
Основываясь на ответе Муру на то, что столбец задан с фиксированной шириной, команда egrep с опцией -o позволит вам печатать только согласованные (непустые) части соответствующей строки, заданной шаблоном поиска. По умолчанию, однако, будет напечатана целая строка.
$ egrep -o "^.{44}" foo
Поскольку это, кажется, столбец фиксированной ширины, вы можете просто cut соответствующие символы. Самый широкий столбец Alanine, aspartate and glutamate metabolism имеет ширину 44 символа, поэтому:
$ cut -c1-44 foo
ABC transporters
Alanine, aspartate and glutamate metabolism
alpha-Linolenic acid metabolism
Aminoacyl-tRNA biosynthesis
Amino sugar and nucleotide sugar metabolism
Arachidonic acid metabolism
Поскольку второй столбец, очевидно, повторяет начало первого столбца, я беру это как критерий разреза с sed, поэтому он не зависит от ширины столбца:
sed 's/^\(.*\)\(.*\) \1$/\1\2/'
pattern - это повторяющаяся часть, обратная ссылка как \1 в конце строки. Вы можете добавить ;s/ *$//, чтобы удалить конечные пробелы, если они вас беспокоят.
Основываясь на ответе Муру на то, что столбец задан с фиксированной шириной, команда egrep с опцией -o позволит вам печатать только согласованные (непустые) части соответствующей строки, заданной шаблоном поиска. По умолчанию, однако, будет напечатана целая строка.
$ egrep -o "^.{44}" foo
Поскольку это, кажется, столбец фиксированной ширины, вы можете просто cut соответствующие символы. Самый широкий столбец Alanine, aspartate and glutamate metabolism имеет ширину 44 символа, поэтому:
$ cut -c1-44 foo
ABC transporters
Alanine, aspartate and glutamate metabolism
alpha-Linolenic acid metabolism
Aminoacyl-tRNA biosynthesis
Amino sugar and nucleotide sugar metabolism
Arachidonic acid metabolism
Поскольку второй столбец, очевидно, повторяет начало первого столбца, я беру это как критерий разреза с sed, поэтому он не зависит от ширины столбца:
sed 's/^\(.*\)\(.*\) \1$/\1\2/'
pattern - это повторяющаяся часть, обратная ссылка как \1 в конце строки. Вы можете добавить ;s/ *$//, чтобы удалить конечные пробелы, если они вас беспокоят.