Как я могу отобразить содержание текстового файла на командной строке?

Я нашел хорошее и легкое решение (uthers, решение так или иначе не работало на меня, я не уверен почему). Переименуйте lv_root к чему-то как lv_root_old и затем переименуйте снимок к lv_root.

 $ lvrename /dev/VolGroup/lv_root /dev/VolGroup/lv_root_old
 $ lvrename /dev/VolGroup/snapshot /dev/VolGroup/lv_root

Затем добавьте rd_LVM_LV=VolGroup/lv_root_old в строку ядра в grub.conf, таким образом, это активируется (по-видимому, снимок не работает, если источник неактивен при начальной загрузке, так как это только содержит изменения относительно источника). Это - то, как моя запись личинки похожа теперь:

root (hd0,0)
kernel /vmlinuz-2.6.32-220.el6.x86_64 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 rhgb crashkernel=auto quiet rd_LVM_LV=VolGroup/lv_root rd_LVM_LV=VolGroup/lv_root_old KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM elevator=deadline processor.max_cstate=1
initrd /initramfs-2.6.32-220.el6.x86_64.img

При предупреждении - при обновлении ядра между взятием снимка и теперь не забывайте загружать ядро, которое использовалось, когда снимок был взят.

139
11.10.2016, 21:18
8 ответов

Используя cat

Так как Ваш файл короток, можно использовать cat.

cat filename

Используя less

Если необходимо просмотреть содержание более длинного файла, можно использовать пейджер такой как less.

less filename

Можно сделать less ведите себя как cat при вызове на маленькие файлы и ведите себя обычно иначе путем передачи его -F и -X флаги.

less -FX filename

У меня есть псевдоним для less -FX. Можно сделать тот сами как так:

alias aliasname='less -FX'

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

Используя od

Если Ваш файл содержит странные или непечатные символы, можно использовать od исследовать символы. Например,

$ cat file
(ÐZ4 ?o=÷jï
$ od -c test
0000000 202 233   ( 320   K   j 357 024   J 017   h   Z   4 240   ?   o
0000020   = 367  \n
0000023
205
27.01.2020, 19:29
  • 1
    +1, также sed -n l file могло быть полезным. –  enzotib 11.08.2013, 09:42
  • 2
    Делает less имейте любые ясные преимущества перед другими программами пейджера как pg, или это просто сводится к персональному предпочтению? –  Sam Weinberg 11.08.2013, 22:22
  • 3
    @SamWeinberg: less имеет больше функций, чем pg. Смотрите на less(1) и pg(1) страницы справочника. Также существуют другие пейджеры. Смотрите на unix.stackexchange.com/questions/81129 / …. less вероятно, наиболее широко используемый пейджер, но какой, который Вы используете, сводится к персональному предпочтению. –   11.08.2013, 22:33
  • 4
    не забывает more и most! –  Rudolf Olah 02.11.2015, 19:16

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

cat filename 
9
27.01.2020, 19:29
  • 1
    Для получения дополнительной информации о cat, выполненный man cat. –   11.08.2013, 06:58

Инструменты для обработки текстовых файлов на Unix являются основными, повседневные команды:

В Unix и Linux для распечатывания целого содержания в файле

cat filename.txt

или

more filename.txt

или

less filename.txt

Для последних нескольких строк

tail filename.txt

Для первых нескольких строк

head filename.txt
9
27.01.2020, 19:29

Я всегда использую $ less "your file here" , поскольку это очень просто, обеспечивает встроенное интерактивное grep команда, и дает Вам простой в использовании интерфейс, который можно прокрутить с клавишами со стрелками.

(Это также включено почти в каждый *, отклоняют систему),

3
27.01.2020, 19:29
  • 1
    less версия излишества more (сравните man less с man more), и для меня это имеет две раздражающих функции: 1) это переключается на альтернативный экранный буфер, когда меньше завершается, файл, который Вы просто просматривали, исчезает 2) в EOF, который необходимо явно ввести q (Я знаю, существует опция для этого). Таким образом, одно из моих первых действий в новой среде устанавливает export PAGER=/bin/more в моем профиле и использовании more все время. –  ott-- 11.08.2013, 18:57
  • 2
    @ott-: 1) Испытайте -X флаг. 2) Испытайте -E флаг. less имеет a more режим эмуляции. Можно включить его путем установки LESS_IS_MORE переменная окружения. Можно прокрутить вверх в more режим эмуляции. –   11.08.2013, 20:35
  • 3
  • 4
    Хотя в целом я действительно согласовываю это less является чрезмерно сложным. Его способность выполнить внешние команды является идеальным примером его сверхсложности. –   11.08.2013, 22:00
  • 5
    @EvanTeitelman я всегда находил grep функциональность чрезвычайно полезной сам, @ott - я нахожу, что из-за это - эмуляция more, и это - много дополнительных функций, это делает задание очень хорошо. –  SG60 14.08.2013, 17:04

Если это - большой файл, и Вы хотите искать некоторую определенную часть, можно использовать

 cat filename | grep text_to_search -ni 

Также можно использовать более интерактивный Редактор Vim (или редактор vi, если у Вас нет Vim):

 vim filename
Or
 vi filename

Vim/vi является великим редактором, может также использоваться в качестве читателя в "Нормальном Режиме" или использующий-R опция, это имеет много функций, которые помогут Вам в просматривании файла.

2
27.01.2020, 19:29
  • 1
    Короче для vim -R view. Но имейте в виду, что этому не нравятся перенаправления, как обсуждено в xargs, и vi - “Вход не от терминала”. –  manatwork 12.08.2013, 14:26
  • 2
    благодарит @manatwork за головы! Я недавно начал использовать Vim, и мне нравится он из-за его нескольких функций. Относительно перенаправлений я забыл о который, спасибо за напоминание. На данный момент я работаю над удаленным VM, где я использую ssh без графического интерфейса, поэтому, Vim очень полезен, когда любой другой редактор GUI не может работать, вот почему я подчеркнул Vim здесь. –  Don't You Worry Child 12.08.2013, 14:48

Используйте команду кошки для отображения содержания имени файла. имя файла кошки

Используйте команду энергии для редактирования файла. имя файла энергии

1
27.01.2020, 19:29

Одним из вариантов является использование Подробнее

E.G. Подробнее file.txt

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

меньше больше

4
27.01.2020, 19:29

Несмотря на то, что все используют cat filename для вывода текста файла на стандартный вывод, первая цель - con cat вводить. Из справочной страницы cat:

cat - объединить файлы и вывести их на стандартный вывод

Теперь cat подходит для печати файлов, но есть альтернативы:

  echo "$(<filename)"
or
  printf "%s" "$(<filename)"

The () возвращает значение выражения, в данном случае содержимое filename , которое затем расширяется на $ для echo или printf .

Обновление:

< filename

Это делает именно то, что вы хотите, и его легко запомнить.

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

#!/bin/bash

select fname in *;
do
# Don't forget the "" around the second part, else newlines won't be printed
  printf "%s" "$(<$fname)"
  break
done

Для дальнейшего чтения:
BashPitfalls - файл cat | sed s / foo / bar /> file
Справочник по Bash - Перенаправление

30
27.01.2020, 19:29

Теги

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