人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

指定したフォルダ内にある、多数のスクリプトファイルを1つのファイルにまとめる

お世話になります。
当方、PHPフレームワークのCakePHPの勉強をしております。
CakePHP3の参考書を読み、さらに詳しくCakePHPを勉強しようと、
CakePHP本体のコードを印刷したいと思っております。

そこで質問なのですが、
このCakePHPの指定したフォルダ内にあるPHPファイルや、テンプレートファイル、テキストファイルなどを
一つのテキストファイル(PDFなどでもOK)に
出力する方法がないかご教授いただきたく思っております。

例えば、
CakePHPフォルダのConfigフォルダ内にあるスクリプトファイルを一つのファイルにまとめられるような、ソフトやWebアプリケーションがあればと思っています。
当方の環境は、ubuntu14.04です。

どうぞ、よろしくお願い致します。

●質問者: nagato-yuki
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● a-kuma3
ベストアンサー

Ubuntu なら、コマンドでできます。

カレントディレクトリが対象のディレクトリだとして、/tmp/all.txt に全てのファイルを吐き出すとしたらこんな感じ。

% find . -type f -print | xargs cat > /tmp/all.txt

吐き出し先のファイルもカレントディレクトリにあると、それも吐き出す対象になっちゃうので、別のディレクトリにするのが吉。
/home/a-kuma3/php/ が対象のディレクトリだとして、カレントの all.txt に吐き出すなら、こう。

% find /home/a-kuma3/php -type f -print | xargs cat > all.txt

(修正です)
ただファイルの内容だけをくっつけちゃうと、後で中を見たときに、どのファイルか分からなくなりそう。
カレントディレクトリを対象に、ファイル名をつけて /tmp/all.txt に吐き出すとしたらこんな感じ。

for f in `find . -type f -print`; do (printf "======\n$f\n"; cat $f) done > /tmp/all.txt

pr コマンドってのがあるのを思い出しました。
ファイル名付きでまとめるなら、こっちの方が良いかも。

% find . -type f -print | xargs pr > /tmp/all.txt

nagato-yukiさんのコメント
ご回答ありがとうございます! 複数の解決方法をご提示していただき、 また、参考になる解説もしていただき感謝しております。 この度は本当にありがとうございました。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ