Вставка копии является более старой, чем мышь. Первый редактор Unix, редактор, имел t
управляйте для копирования набора строк к другому местоположению. В vi существуют различные команды, чтобы сократить, дергать и вставить текст. Для копирования текста между файлами Вы сохранили бы текст для копирования во временном файле и импорте что временный файл в целевом документе, например, с w
и r
в редакторе (:w
и :r
в vi). Для включения вывода команды в файле Вы перенаправили бы его вывод (mycommand >file
или mycommand >>file
) и импортируйте тот файл в свой документ; vi, представленный !
команда и друзья для прямой вставки вывода, не требуя временного файла.
Загрузка страницы справочника в Vim или Emacs и вставку копии от него является стандартной программой для пользователей Vim/Emacs. Веб-браузеры не существовали, пока Unix не был достаточно взрослым для питья, но тот же принцип применяется где угодно: буфер обмена является более старым, чем оконные среды. Что принесенные оконные среды было вставкой копии перекрестного приложения, которая могла быть, покончили только немного больше усилия через файлы.
В данном случае cat book??.html > book.html
будет хорошо работать, если Вы не будете заботиться о надлежащем формате HTML.
Для более общего случая скажите, что у Вас были "book1.html" вместо "book01.html", "book2.html" вместо "book02.html" и т.д. Имена файлов не сортируют лексически то же как логически. Можно сделать что-то вроде этого:
(echo book?.html | sort; echo book??.html | sort) | xargs cat > book.html
Так в целом: script_generating_file_names_in_order | xargs cat > all_one_file
Та идиома может иметь большое значение.
Я покупаю комментарии о голове/хвосте и имею решение, отсортированное по числу без этого материал xargs/sort/echo.
cat book{01..12}.html book-all.html
При использовании вида GNU, можно использовать sort -V
отсортировать имена в правильном порядке:
$ echo -e "book4\nbook2\nbook17\nbook12" | sort -V book2 book4 book12 book17
Это работает на любое количество файлов:
ls book*.html | sort -V | xargs cat > allbooks.html
Простое решение будет, вероятно, работать, если Ваш браузер будет permissiv.
cat book[0-9]*.html > book.html
Уверенный Вы могли обойти материал разделения, чтобы быть, вероятно, немного более законными:
perl -e 'undef($/); for($x=0;$x<=$#ARGV;$x++) { open(X,"<",$ARGV[$x]); $_ = <X>; close(X); s/.*<body[^>]*>//s unless ($x == 0); s|</body>|| unless ($x == $#ARGV); print;' book[0-9]*.html > book.html
Но это не гарантия, что у Вас действительно будет все, в чем Вы нуждаетесь или, если главы имеют различные стили или JavaScript или что бы то ни было.