Я запускаю скрипт сортировки для существующего файла в Ubuntu, используя чашечный скрипт:
sort -r -k 2 -o mayflies.txt
, но терминал зависает и ничего не показывает, однако работает без -o, но мне нужно отсортировать файл, а не на экране
Вы не указали ни одного входного файла, в который будет помещена операция sort
, поэтому терминал ожидает ввода по STDIN. Это связано с тем, что, как если бы вы не предоставили входной файл, sort
будет принимать входные данные из STDIN.
Что вам нужно, например, если имя файла ввода равно foo.txt
:
sort -r -k 2 -o mayflies.txt foo.txt
Это сохранит отсортированный вывод foo.txt
в mayflies.txt
. Если вы пропустите часть -o mayflies.txt
, отсортированный вывод будет показан на экране (STDOUT).
С другой стороны, если ваши имена входных и выходных файлов подразумеваются как один и тот же файл, т.е. если вы хотите сохранить выходные данные в том же файле:
sort -r -k 2 -o mayflies.txt mayflies.txt