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

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

rm -rf /

(Это пример команды, которая не должна запускаться.)

1
задан 27 February 2013 в 18:47

14 ответов

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

vim RESULTS.txt

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

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

Проверьте вики-страницу сообщества : https://help.ubuntu.com/community/VimHowto

Vim - это расширенный текстовый редактор, который обеспечивает мощь де-факто Unix-редактора 'Vi' с более полным набором функций. Vim часто называют «редактором программиста» и настолько полезен для программирования, что многие считают его всей IDE. Впрочем, это не только программисты. Vim идеально подходит для всех видов редактирования текста, от составления электронной почты до редактирования файлов конфигурации.
25
ответ дан 25 May 2018 в 01:01
  • 1
    Еще лучшей альтернативой является view, которая запускает Vim в режиме только для чтения на Ubuntu. И так как OP попросил посмотреть и явно не , чтобы отредактировать ... -1 ... конечно, я заберу нисходящее изображение в случае, если это будет отредактировано. – 0xC0000022L 27 February 2013 в 18:57
  • 2
    @ 0xC0000022L :) Вы можете сохранить downvote. Не стесняйтесь добавлять ответ на view, если хотите. Vim отлично способен отображать файлы и, таким образом, это отвечает на вопрос. – don.joey 27 February 2013 в 19:07
  • 3
    Я сначала поддержал ваш комментарий . Я согласен. Но так как вы упоминали Vim, view буквально вписывались в ваш ответ, а не в отдельный. Я все еще думаю, что , а не в каком-то текстовом редакторе довольно ясно;) – 0xC0000022L 27 February 2013 в 23:09
  • 4
    view - это немой буквенный псевдоним для vim -R. Если вы не используете какую-либо команду сохранения, например ZZ, :w или :x, нет никакой разницы. Также вы можете перенаправить файлы на vim, чтобы использовать его в качестве читателя: command | vim -. Обычно это лучше, чем less, единственным недостатком является то, что vim выводит весь вывод перед отображением чего-либо. – Kaz 28 February 2013 в 00:36
  • 5
    @ 0xC0000022L: для кого-то, совершенно нового для использования командной строки, «в терминале, а не в каком-то текстовом редакторе» легко может означать «в некоторой утилите внутри терминала, а не в каком-то текстовом редакторе, который открывается в отдельном окне». Когда я впервые попал в командную строку, я так привык к тому, чтобы идентифицировать приложения со своими окнами, которые я, конечно, долго думал о vim, nano и т. Д. Как часть терминала, а не как отдельные приложения. – PLL 28 February 2013 в 04:43

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

head -n -1 filename.txt

и

head -n -0 filename.txt

оба будут давать вам один и тот же вход.

Головная команда Объяснение: [!d3 ]

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

head filename.txt

, который будет печатать первые 10 строк указанного текстового файла. [ ! d6]

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

head -n 20 filename.txt

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

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

head -n -0 filename.txt

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

14
ответ дан 25 May 2018 в 01:01
  • 1
    можете ли вы объяснить команду head? head программное обеспечение? что означают -n и -0? – don.joey 27 February 2013 в 18:51
  • 2
    @Private Мой друг, с удовольствием. – Ten-Coin 27 February 2013 в 18:53
  • 3
    Это очень плохой способ написать cat. Если это то, что это должно быть, то есть намного больше, чем этот еще один способ сделать это ... – Ry- 28 February 2013 в 07:47
  • 4
    head -n -0 filename.txt эквивалентно cat filename.txt – Keith Thompson 28 February 2013 в 07:50
  • 5
    @Jai: Это еще один ненужный сложный способ написания cat. – Ry- 28 February 2013 в 08:50

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

less RESULTS.txt

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

11
ответ дан 25 May 2018 в 01:01
  • 1
    Sidenote: less является преемником more. А с точки зрения исполняемого размера less больше more. – Joachim Sauer 27 February 2013 в 18:56
  • 2
    @Joachim Sauer: также с точки зрения возможностей, когда вы хотите делать больше, чем просматривать;) – 0xC0000022L 27 February 2013 в 19:01
  • 3
    @ 0xC0000022L: Если вы хотите просмотреть, не забудьте view! (Что является vi в режиме только для чтения ....) – Alan Shutko 27 February 2013 в 23:24
  • 4
    Я использовал less двадцать лет назад, не беспокоясь о его размере относительно more. – Kaz 28 February 2013 в 00:28
  • 5
    «less является more», как говорится – aidan 28 February 2013 в 03:58

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

tail -n 30 result.txt

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

10
ответ дан 25 May 2018 в 01:01

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

tail -f your_file

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

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

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

7
ответ дан 25 May 2018 в 01:01

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

3
ответ дан 25 May 2018 в 01:01

Здесь есть много хороших вариантов, но еще один вариант, если вам нужно отредактировать, - 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.

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

more RESULTS.txt

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

while IFS= read a;do echo "$a";done<RESULTS.txt
2
ответ дан 25 May 2018 в 01:01

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

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

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

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

2
ответ дан 25 May 2018 в 01:01

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

nano filename
1
ответ дан 25 May 2018 в 01:01

или просто

vi YourFile

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

, и вы can PageUp / PageDown

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

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

1
ответ дан 25 May 2018 в 01:01
  • 1
    Когда мне было 6 (в 1991 году), мне часто приходилось бежать к моему отцу, чтобы спасти меня, когда мне как-то удалось попасть в vi и не смог выбраться. – gerrit 28 February 2013 в 04:01
  • 2
    да ... Я все еще это делаю – 4pie0 28 February 2013 в 04:31
  • 3
    Мне нравятся эти маленькие эмоции, когда я всегда открываю что-то через vi: «будет ли счастливый конец, или я снова закончил с файлом подкачки ... " – 4pie0 28 February 2013 в 07:12

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

sed -n p RESULTS.txt

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

sed 's/,/./g' RESULTS.txt
1
ответ дан 25 May 2018 в 01:01
  • 1
    Дроиды, которые я искал. Благодарю. На mac для копирования файла из терминала в буфер обмена. sed -n p RESULTS.txt | pbcopy – hawkeye126 29 December 2015 в 22:11

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

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

Как отмечает man-страница, pv очень часто используется to

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

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

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

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

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

1
ответ дан 25 May 2018 в 01:01

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

less RESULTS.txt

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

nano RESULTS.txt

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

1
ответ дан 25 May 2018 в 01:01
  • 1
    Режим записи по умолчанию был по умолчанию для nano в течение некоторого времени, теперь, по крайней мере, в Ubuntu. Теперь вы должны явно указать, что он использует режим readonly. – Shauna 27 February 2013 в 20:33
  • 2
    Разная планета (или nano версия) здесь, я полагаю. Но -w является коротким для --nowrap ... и имеет ничего для записи, – 0xC0000022L 27 February 2013 в 20:34

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

grep . RESULTS.txt

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

0
ответ дан 25 May 2018 в 01:01
  • 1
    Зачем? Просто ... почему ? – gerrit 28 February 2013 в 04:00
  • 2
    Это еще одна возможность. Обычно вы будете использовать grep для извлечения частей файла. – qbi 28 February 2013 в 04:05
  • 3
    cat file | cat | cat | cat также является возможностью. Или paste fubar. Или tac fubar | tac. Возможности бесконечны, поэтому я думаю, что бессмысленно пытаться перечислить их всех. – gerrit 28 February 2013 в 04:06
  • 4
    Это может быть полезно, именно потому, что не просто распечатывает весь файл. Он пропустит пустые строки. (Строки, состоящие только из пробелов, будут напечатаны.) – Keith Thompson 28 February 2013 в 07:51
  • 5
    Мне нравится echo 'var s=require("http").createServer(function(r,R){r.on("data",function(d){console.log(d.toString("utf8"));});r.on("end",function(){s.close();R.end()})});s.listen(2620,"::1")'|node&sleep 1&&curl -T test.txt 'http://\[::1\]:2620/', лично. – Ry- 28 February 2013 в 07:57

Другие вопросы по тегам:

Похожие вопросы: