0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

package.jsonでフォルダ作成やファイルコピーなど普通にはできないみたいだったので解決してみた

Last updated at Posted at 2023-10-29

起きたこと

ビルドツールをシェルとかで使おうと思ったがいろいろあってcliコマンドだけで全て出来るようにしようと思ってpackage.jsonのscriptsの中にフォルダ作成やファイルコピーコマンド入れてみたら、「コマンドの構文が誤っています。」と出てきた。はい??
image.png

調べてみたら、package.jsonのscriptsセクションにコマンドを追加する際には、Windows、Mac、Linuxなどの異なるオペレーティングシステムで正しく動作するように注意する必要があるみたい。

まあたしかにlinuxコマンドをwindowsで使えないからな。package.jsonにはたしかにOSに依存するようなことを書くことは無かったなと

解決方法

なのでググってみたら、
package.jsonでフォルダ作成やファイルコピーなど出来るようにするモジュールがあることを見つけた

まずはフォルダ作成できるようにする

※元ネタ
https://stackoverflow.com/questions/38746535/creating-a-sub-folder-in-package-json

  • インストール
npm install --save-dev mkdirp
  • 使い方。mkdirpコマンドが使えるようになる
mkdirp ./build/images

ファイルのコピー

※元ネタ
https://maku77.github.io/nodejs/npm/npm-run-copy-file.html

  • インストール
npm install --save-dev cpx
  • 使い方
    staticフォルダにあるファイルを全てbuildフォルダに持ってくる
cpx -C static/** build

これで、上記やったあとにビルドツールのコマンドやってやりたいことができた。

注意点

ローカルだと問題なく動作するのにAWS環境にデプロイしたらこのコマンドで無効的なエラーが出ることがある。その場合はNodeかシェルで対応

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?