アラサー女のゼロからエンジニア!

知識ゼロからWebエンジニアを目指すアラサー女のブログです。ウェブカツを退部しこれまでの記事を削除しました(許可済)。

Web制作を秒ではじめたいのではじめてシェルスクリプト書いた

さくっとWeb制作用ディレクトリ作成

やりたいこと

WebページやWebアプリを作り始めるときにディレクトリをポチポチ右クリックで作っていくのが面倒臭い。 秒でコード書き始めたい。

できること

  • src/内に scss、js、imagesディレクトリ生成
  • src/scssフォルダ内にFLOCSS用のsassファイル生成。モジュールを統括するapp.scssも。
  • dist/内にcss、jsディレクトリ生成
  • index.html生成
.
├── ./dist
│   ├── ./dist/css
│   └── ./dist/js
├── ./index.html
└── ./src
    ├── ./src/images
    ├── ./src/js
    └── ./src/scss
        ├── ./src/scss/app.scss
        ├── ./src/scss/foundation
        │   ├── ./src/scss/foundation/_base.scss
        │   └── ./src/scss/foundation/_reset.scss
        ├── ./src/scss/layout
        │   ├── ./src/scss/layout/_footer.scss
        │   ├── ./src/scss/layout/_header.scss
        │   ├── ./src/scss/layout/_main.scss
        │   └── ./src/scss/layout/_sidebar.scss
        └── ./src/scss/object
            ├── ./src/scss/object/component
            │   ├── ./src/scss/object/component/_button.scss
            │   ├── ./src/scss/object/component/_dialog.scss
            │   ├── ./src/scss/object/component/_grid.scss
            │   └── ./src/scss/object/component/_media.scss
            ├── ./src/scss/object/project
            │   ├── ./src/scss/object/project/_articles.scss
            │   ├── ./src/scss/object/project/_comments.scss
            │   ├── ./src/scss/object/project/_gallery.scss
            │   └── ./src/scss/object/project/_profile.scss
            └── ./src/scss/object/utility
                ├── ./src/scss/object/utility/_align.scss
                ├── ./src/scss/object/utility/_clearfix.scss
                ├── ./src/scss/object/utility/_margin.scss
                ├── ./src/scss/object/utility/_position.scss
                ├── ./src/scss/object/utility/_size.scss
                └── ./src/scss/object/utility/_text.scss

こうなる

暫定使い方

  1. 下記スクリプトディレクトリを作成したいフォルダAで「任意のファイル名.sh」で保存 (例:test.sh)
  2. コンソールでフォルダAに移動し「sh test.sh」を実行
#!/bin/sh
echo "Webサイト作成の初期フォルダを生成します"
#htmlファイルを作る
touch index.html
#ディレクトリをつくる
mkdir -p src/images src/js src/scss 
#FLOCCS用ディレクトリをつくる 不要ならコメントアウトしてください
cd src/scss
mkdir -p foundation layout object/component object/project  object/utility
#FLOCSS用sassファイルを作成する
cd foundation
touch _base.scss _reset.scss
cd ../layout
touch _header.scss _footer.scss _main.scss _sidebar.scss
cd ../object/component
touch _button.scss _dialog.scss _grid.scss _media.scss
cd ../project
touch _articles.scss _comments.scss _gallery.scss _profile.scss
cd ../utility
touch _align.scss _clearfix.scss _margin.scss _position.scss _size.scss _text.scss
cd ../../


# 統括ファイルを作成
touch app.scss
cat <<EOS > app.scss
// ==========================================================================
// Foundation
// ==========================================================================

@import "foundation/_reset";
@import "foundation/_base";

// ==========================================================================
// Layout
// ==========================================================================

@import "layout/_footer";
@import "layout/_header";
@import "layout/_main";
@import "layout/_sidebar";

// ==========================================================================
// Object
// ==========================================================================

// -----------------------------------------------------------------
// Component
// -----------------------------------------------------------------

@import "object/component/_button";
@import "object/component/_dialog";
@import "object/component/_grid";
@import "object/component/_media";

// -----------------------------------------------------------------
// Project
// -----------------------------------------------------------------

@import "object/project/_articles";
@import "object/project/_comments";
@import "object/project/_gallery";
@import "object/project/_profile";

// -----------------------------------------------------------------
// Utility
// -----------------------------------------------------------------

@import "object/utility/_align";
@import "object/utility/_clearfix";
@import "object/utility/_margin";
@import "object/utility/_position";
@import "object/utility/_size";
@import "object/utility/_text";
EOS
cd ../..
#distフォルダを作成
mkdir -p dist/js dist/css 

完全に相対パスで書いてるし、保守性よくないのでもうちょっと勉強してブラッシュアップしていきます。 とりあえずFLOCSSやり始めるのがめんどくせえ、という気持ちが薄れるのでよかったら使ってください。

いい拡張機能や、つよいエンジニアの方がつくったよいソースがあったら教えてください!