ブログを作成するための単一の bash スクリプト。
これを作成したのは、特別な要件や依存関係を必要とせずに、サーバー上のパブリック フォルダーを使用してエントリをブログに投稿する非常に簡単な方法が必要だったからです。 GNU/Linux、OSX、BSD で動作します。
なんて簡単なことでしょう?入力するだけ ./bb.sh post そしてブログ投稿を書き始めてください。
ここでサンプルをご覧いただけます: 最初のブログ投稿をお読みください。このページは 100% Bashblog を使用して構築されており、追加の変更はありません。
![]()
他のBashblogユーザーを表示
コードをダウンロードし、bb.sh をパブリック フォルダーにコピーします (たとえば、 $HOME/public_html/blog)そして実行します
これにより、利用可能なコマンドが表示されます。ファイルが実行可能でない場合は、次のように入力します。 chmod +x bb.sh そしてもう一度試してください。
最初の投稿を作成する前に、ブログ設定 (タイトル、作成者など) を構成することができます。詳細については、以下の構成セクションをお読みください
最初の投稿を作成するには、次を実行するだけです。
インストールされている場合は、Markdown を使用しようとします。 HTMLをバインドするには:
残りはスクリプトが処理します。
完了したら、そのフォルダーのパブリック URL にアクセスします (たとえば)。 http://server.com/~username/blog) インデックス ファイルとその投稿の新しいページが表示されるはずです。
ヘッダーやフッター、静的ページなどの BashBlog の高度な機能の使用方法については、Wiki を読んでください。
- 使い方は非常に簡単です。お気に入りのエディタで投稿を入力するだけで、残りの作業はスクリプトが実行します。テンプレートはありません。
- インストールは必要ありません。ダウンロード
bb.shそしてブログを始めましょう。 - 依存性ゼロ。基本ユーティリティ上でのみ実行されます (
date、basename、grep、sed、head等) - GNU/Linux、BSD、OSX とすぐに互換性があり、GNU は必要ありません
coreutilsMac で。システムに応じて、どのコマンド スイッチを実行する必要があるかを自動的に判断する魔法のような働きをします。 - すべてのコンテンツは安定しています。パブリック Web フォルダーを含むマシンへのシェル アクセスのみが必要です。
ヒント: 上級ユーザーは、次の方法でリモート パブリック フォルダーをマウントできます。ftpfsこのスクリプトをローカルで実行します - 下書きが可能で、シンプルだがクリーンなスタイルシートが含まれ、RSS ファイルが自動的に生成されます。
- タグ/カテゴリーのサポート
- Markdown、Disqus コメント、Twitter、Feedburner、Google Analytics のサポート。
- このプロジェクトは 2016 年の時点でも継続中です。バグが修正され、新機能が検討されています (「貢献」を参照)。
- すべては約 1,000 行の bash スクリプトに保存されます。これはなんと素晴らしいことでしょう?! 😉
テストドライブには設定は必要ありませんが、BashBlog を使用してブログを運営する予定がある場合は、デフォルトのタイトル、著者名などを自分のものに合わせて変更することをお勧めします。
ブログ文字列を構成するには 2 つの方法があります。
- 編集
bb.shそして変数を変更しますglobal_variables()お祝い - を作成します
.config構成値を含むファイル – スクリプトには触れたくないが、Git を使用して定期的に更新できるようにしたい場合に便利です
ソフトウェアは最初に値をスクリプトにロードし、次にその値で上書きします。 .config ファイル。これは、構成ファイル内のすべての変数を定義する必要はなく、デフォルトをオーバーライドする必要がある変数のみを定義する必要があることを意味します。
の形式 .config ファイルは 1 つだけです variablename="value" 行ごとに、正確に global_variables()
お祝い。 覚えておいてください: 値を引用符で囲み、ドル記号を使用して変数を宣言したり、等号の前後にスペースを使用したりしないでください。
バッシュブログを使用します $EDITOR テキストエディタを開くための環境値。
- ブログ投稿のみを含む、シンプルだが読みやすいデザイン
- 2.0の新機能 サードパーティライブラリによるマークダウンのサポート。
最も簡単な方法は、Gruber の Markdown.pl をダウンロードすることです。 - ポストプレビュー
- 投稿を下書きとして保存し、後で編集を再開する
- タイトルを URL として使用する、各投稿の HTML ページ
- ホームページ上の構成可能な投稿数
- RSSファイル自動作成、Feedburner対応
- すべての投稿のインデックスを含む追加ページ
- タグごとにページを自動作成します
- 元のデータを維持したまますべてのファイルを再構築します
- Disqus の追加サポートによりコメントが Twitter に渡される
- EU Cookie 法に準拠するための Cookie を使用しない Twitter 共有の代替手段
- Google アナリティクス コードのサポート
- 独自の CSS が含まれているため、デフォルトですべてが適切にスタイル設定されます
- ヘッダー、フッター、および一般に、適切に構造化された HTML ファイルに必要なものすべて
- 各ページの上部に追加コンテンツ (バナー、画像など) を追加するためのサポート
- xhtml 検証、css 検証、w3c による RSS 検証
- 投稿するたびにサイトが自動的にバックアップされます (アーカイブ形式で)。
.backup.tar.gz)
さらに詳しい更新情報については、変更履歴セクションを読むか、私のブログのニュースをチェックしてください
Bashblog は 500 SLOC で始まり、現在は 1000 SLOC の壁に達しています。コードを最小限に抑え、理解しやすいものにしたい場合は、機能を追加しすぎないようにさらに努力する必要があります。
すべてのバグ修正は歓迎されますが、新しい機能をメイン ツリーに追加するには、強力な正当性が必要です。新しいリクエストはそれぞれ、コメントで正直かつ礼儀正しく議論されます。ガイドラインとして、プル リクエストは次のことを行う必要があります。
- 一部のユースケースを修正 (国際化など)
- おそらく一般的すぎるユースケースを追加します (例: コメントの Disqus 統合)
- 可能な限り非常に小さくしてください (数行のコード)
- コードを大幅に書き直す必要はありません (壊れません)。
create_html_file()またはwrite_entry()等) - Linux、BSD、Mac で動作するはずです。非 POSIX フラグを指定して GNU coreutils を使用する場合は注意してください (つまり、
dateまたはgrep) - UNIX の哲学に従ってください。つまり、1 つのことを実行し、それをうまく実行する、外部機能についてはサードパーティ ソフトウェアに依存する、などです。
- いつも デフォルト構成を使用する場合は下位互換性を維持する
- 2.10追加
global_twitter_card_image - 2.9追加
body_begin_file_index - 2.8 バグ修正
Tomasz Jadowski によるスラブ語のサポート
現在は廃止された Twitter JSON API シェア数が削除されました
Bashblog HTML ファイルによって管理されない静的ファイルのサポート - 2.7 コメントの投稿日を HTML ファイルに保存します (#96)。
リビルドすると、投稿日はコメント日とファイル日の間で同期され、コメント日が優先されます。 - 2.6 複数の作成者のサポート、別の作成者を使用する
.config一人ひとりにとって - 2.5 Martijn Dekker による広範なコードのクリーンアップ
「タグ」コマンド
「post」という単語がタグ リスト (Web サイトとコマンドの両方) に 1 つのフォームを持つようになりました。を参照してください。template_tags_posts_singular - 2.4 投稿の Twitter 概要メタデータを追加 (#36)
- 2.3.3 大きなコメントヘッダーが削除されました。
インデックスページにカット記事のタグを表示するオプションを追加 (#61)
「すべての投稿」ページがクリアされました (#57) - 2.3.2 参照用に Twitter の代わりに Topsy を使用するオプション
- 2.3.1 Cookie を使用しない Twitter の代替手段
- 2.3 デフォルトでのインテリジェントなタグの再構築とマークダウン
- 2.2 柔軟な投稿タイトル -> ファイル名変換
- 2.1 タグ/カテゴリのサポート。
「削除」コマンド - 2.0.3 外部ファイルを介した他の分析コードのサポート
- 2.0.2 $body_begin_file が空だった場合のバグを修正しました。
Github プロジェクトにリンクするフッターに追加行を追加しました - 2.0.1 パーソナライズされたヘッダー/フッター ファイルを許可する
- 2.0 マークダウンのサポートが追加されました。
BSD 日付を完全にサポート - 1.6.4 ローカル日付のバグを修正
- 1.6.3 BSD 日付がサポートされるようになりました
- 1.6.2 情報の重複を避けるために一部の関数と変数が簡略化されました
- 1.6.1 時間が1桁の場合の「日付」を設定します。
- 1.6.0 ディスクコメント。外部構成ファイル。 「date」コマンドのバージョンを確認してください。
- 1.5.1 その他のバグ修正とパラメータのチェック
- 1.5 Đurađ Radojičić (djura さん) はいくつかのコードをリファクタリングし、柔軟性と i18n を追加しました。
- 1.4.2 問題は Github で処理されるようになりました
- 1.4.1 一部のコードのリファクタリング
- 1.4 コメントに Twitter を使用し、「rebuild」コマンドを改善
- 1.3 「編集」コマンド
- 1.2.2 フィードバーナーのサポート
- 1.2.1 タイムスタンプのバグを修正
- 1.2 「リスト」コマンド
- 1.1 ドラフトとプレビューのサポート
- 1.0 http://is.gd/Bkdoru を読む
このプログラムはフリー ソフトウェアです。Free Software Foundation によって公開されている GNU General Public License の条件 (そのライセンスのバージョン 3、または (ユーザーの選択による) 以降のバージョン) に基づいて再配布および/または変更することができます。
このプログラムは役立つことを期待して配布されていますが、いかなる保証もありません。商品性または特定の目的への適合性についての黙示の保証はありません。詳細については、GNU 一般公衆利用許諾書を参照してください。
このプログラムと一緒に GNU 一般公衆利用許諾書のコピーも受け取っているはずです。そうでない場合は、http://www.gnu.org/licenses/ を参照してください。










Leave a Reply