Как открыть текстовый файл в моем терминале?

92

Существует файл с именем RESULTS.txt , и я хочу открыть этот файл в моем терминале. (Я хочу сказать, что содержимое файла должно отображаться в терминале, а не в каком-то текстовом редакторе)

Как это сделать?

    
задан BuZZ-dEE 27.02.2013 в 13:47
источник

15 ответов

122

Для коротких файлов:

cat <path/your_file>

прямо показывает текстовый файл в терминале.

Для более длинных файлов:

less <path/your_file>

позволяет прокручивать и искать ( / text to search Enter ) в файле; нажмите q для выхода.

например.

cat /home/john/RESULTS.txt
less /home/john/RESULTS.txt
    
ответ дан dedunumax 27.02.2013 в 13:59
источник
25

Другой альтернативой является vim .

vim RESULTS.txt

Как только вы открыли файл с помощью vim, вы можете вставить текст, например, набрав i . Если вы хотите сохранить свой файл, используйте :w (write) или :q (quit) или :wq (для записи и выхода) или :q! (выйти и не сохранять). Иногда вам нужно нажать клавишу ESC , чтобы иметь возможность вводить команды.

Vim требует некоторого обучения, но широко используется, и он very универсален.

Проверьте справочную информацию сообщества: Ссылка

  

Vim - это расширенный текстовый редактор, который обеспечивает возможность де-факто   Редактор Unix «Vi» с более полным набором функций. Вим часто называют   «редактор программиста» и настолько полезен для программирования, что многие   рассмотрите его как полностью IDE. Впрочем, это не только программисты. напор   идеально подходит для всех видов редактирования текста, от составления электронной почты до   редактирование файлов конфигурации.

    
ответ дан Private 27.02.2013 в 13:50
14

все это лучшие способы, и есть еще один способ сделать это & ​​amp; это команда head .

head -n -1 filename.txt

и

head -n -0 filename.txt

оба предоставят вам один и тот же ввод.

Основная команда Объяснение:

Обычно команда заголовка используется для печати стартовых строк любого текстового файла. Мы можем просматривать текстовый файл с помощью

head filename.txt

Это будет печатать первые 10 строк указанного текстового файла.

Если вы хотите указать количество строк, которые должны быть видны, вы можете использовать head как

head -n 20 filename.txt

Затем в приведенном выше текстовом файле будут просматриваться первые 20 строк.

Если вы хотите просмотреть данные всего файла с помощью средств заголовка, тогда мы можем получить его с помощью

head -n -0 filename.txt

Надеюсь, что выше объяснение даст вам некоторое представление об использовании головы.

    
ответ дан Jai 28.02.2013 в 16:59
11

Если файл довольно длинный, вы можете использовать

less RESULTS.txt

, чтобы вы могли перемещаться по нему с помощью направленных клавиш.

    
ответ дан tvuillemin 28.02.2013 в 07:11
10

Другой вариант:

tail -n 30 result.txt

, чтобы распечатать последние 30 строк большого файла с именем result.txt .

    
ответ дан Jool 27.02.2013 в 15:19
7

Другая опция:

tail -f your_file

Он покажет вам последние десять строк your_file . Если процесс добавляет что-то в этот файл, вы видите его на своем терминале. man tail дает вам больше tail .

Полезно узнать, что происходит с сервером при использовании этой команды в файле журнала.

Нажмите Ctrl - C , чтобы выйти, когда вы закончите просмотр.

    
ответ дан Luc M 28.02.2013 в 03:31
3

С текстовым редактором терминала: nano /path/to/file/RESULTS.txt

    
ответ дан prophecy201 27.02.2013 в 13:17
2

Здесь есть много хороших опций, но еще один вариант, если вам нужно отредактировать emacs:

emacs -nw RESULTS.txt

может не понадобиться -nw , в зависимости. Вам также может потребоваться apt-get install emacs23 или apt-get install emacs24 , или если у вас нет X или вы не хотите связанных зависимостей X, apt-get install emacs23-nox или apt-get install emacs24-nox .

В дополнение к cat и less , как упоминалось в другом месте, существует more . Больше меньше, потому что вы видите страницу за раз и не можете прокручивать эту команду, но вы можете прокручивать ее с помощью окна терминала, если у вас есть окно прокрутки:

more RESULTS.txt

Если вы находитесь в bash, у вас есть что-то похожее на cat , делая:

while IFS= read a;do echo "$a";done<RESULTS.txt
    
ответ дан Gary S. Weaver 27.02.2013 в 19:44
2

Есть много альтернатив для этого:

Некоторые из этих программ имеют множество параметров, поэтому проверьте это с помощью --help после команды.

  • cat filename печатает весь файл сразу
  • more / less filename аналогичное поведение для просмотра файла по частям
  • tail filename начать чтение из хвоста файла
  • grep text filename для фильтрации результатов

Надеюсь, что некоторые из них сработают для вас.

    
ответ дан kainlite 28.02.2013 в 03:04
1

Если вам нужно отредактировать содержимое файла, я обычно использую nano.

nano filename
    
ответ дан Jaison Brooks 27.02.2013 в 19:42
1

или просто

  

vi YourFile

используйте кнопки hjkl для перемещения линии влево / вниз / вверх / вправо, Esc затем: q для выхода

, и вы можете PageUp / PageDown

вы также можете отредактировать его здесь простым способом.

здесь вы найдете более ссылку

    
ответ дан 4pie0 27.02.2013 в 22:12
1

Программа оболочки sed также имеет возможность распечатывать содержимое файла.

sed -n p RESULTS.txt

Таким образом, sed просматривает каждую строку и печатает ее на терминале. Но sed также имеет возможности редактирования. Например, если вы хотите заменить каждую запятую точкой, которую вы можете написать:

sed 's/,/./g' RESULTS.txt
    
ответ дан qbi 27.02.2013 в 22:28
1

Как нам представляется, перечисление всех доступных альтернатив отображения любого текстового файла в терминале, было бы довольно интересно ввести pv как технически один действительный (но необычный) метод, хотя я обычно использовал бы cat вместо для большинства вещей.

Он находится в репозиториях и поэтому может быть установлен с sudo apt-get install pv , если у вас его еще нет.

Как отмечает man page , pv очень часто используется до

  

отслеживать ход данных через трубу ... pv будет копировать каждый поставляемый FILE в свою очередь на стандартный вывод (- означает стандартный ввод), или если FILE не указаны, копируется только стандартный ввод. Это то же поведение, что и cat (1).

С pv вы можете буквально распечатать файл на экране и выбрать скорость ( -L ), по которой она появляется. В приведенном ниже примере используется высокая скорость (300), но если вы выберете такую ​​низкую ставку, как -L 50 , она появится так, как будто компьютер печатает файл для вас.

pv /etc/apt/sources.list -qL 300

Излишне говорить, что вы можете увеличить скорость ( -L 8000 ), и команда становится очень похожей на cat , при этом вывод появляется мгновенно.

Для получения дополнительной информации см. man pv или Ubuntu manpages online .     

ответ дан Mik 28.02.2013 в 01:22
1

Если вы просто хотите прочитать содержимое файла, зайдите в каталог файлов и введите

less RESULTS.txt

Если вы хотите прочитать и отредактировать текстовый файл, из того же типа каталога

nano RESULTS.txt

Переключатель -w в команде nano может быть вставлен перед именем файла, чтобы предотвратить перенос длинных строк.

    
ответ дан DocKuro 28.02.2013 в 03:40
0

Еще один экзотический ответ - использовать grep :

grep . RESULTS.txt

Команда grep выполняет поиск каждого символа в файле и распечатывает его. Таким образом, в основном распечатывается полный файл.

    
ответ дан qbi 27.02.2013 в 22:25