wipe-modules

授权协议 MIT License
开发语言 SHELL
所属分类 应用工具、 终端/远程登录
软件类型 开源软件
地区 不详
投 递 者 裴姚石
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

wipe-modules

A little agent that removes the node_modules folder of non-active projects ��️

Why

If you're a Javascript developer, you know the node_modules directory holds thousands or even millions of files, resulting in taking a lot of space in your hard disk.

Enter wipe-modules, a little agent that wipes (eats, literally) that big node_modules directory of non-active projects.

Why in Earth would you want to have those monster-sized node_modules folders on inactive projects? You got your package.json to recreate it whenever you want, right?

Watch wipe-modules in action! ��

Inspiration

I got the idea when I saw this Wes Bos tweet.

6 hours into a time machine restore - node_modules with millions of files is killing me pic.twitter.com/2KirOXF2v2

-- Wes Bos (@wesbos) May 1, 2017

Problem solved now! �� ��

Install

Can be installed with npm, bpkg or curl.

npm

$ npm install --global wipe-modules

That's it! ��

bpkg

$ bpkg install -g bntzio/wipe-modules

Done! ��

curl

$ curl -L https://raw.githubusercontent.com/bntzio/wipe-modules/master/wipe-modules.sh -o ~/bin/wipe-modules && chmod +x ~/bin/wipe-modules

All set! ��

If you're using zsh or a different shell, make sure to have ~/bin in your $PATH.

Usage

$ wipe-modules --help

  Usage: wipe-modules [path] [days] [options]

  Path:
    The full path of your code directory

  Days:
    The days you want to set to mark projects as inactive

  Options:
    -D, --dry      Only show node_modules to be removed

  Example: wipe-modules ~/code 30

  That will remove the node_modules of your ~/code projects
  whose been inactive for 30 days or more.

Using cron

wipe-modules can be executed as a background job using using cron

To set a cron job, download the cron-file file included in the repo.

$ curl -L https://raw.githubusercontent.com/bntzio/wipe-modules/master/cron-file -o ~/Desktop/cron-file

This will download the cron-file and put it in your ~/Desktop location.

The default cron-file holds the following syntax:

0 11 * * * $HOME/bin/wipe-modules ~/code_dir 30

That is the crontab (cron table) file, it instructs cron to run the wipe-modules ~/code_dir 30 script everyday at 11:00 am.

Edit the cron-file to match your own needs, see how to set up a crontab for more info.

Note: depending on how you installed wipe-modules you need to set the correct path of the wipe-modules.sh shell script in your cron-file for cron to find and execute the script.

Now set the cron-file crontab file in cron using:

$ crontab ~/Desktop/cron-file

And you're done! ��

To check if you've successfully added your crontab type:

$ crontab -l

It should display your crontab.

To edit a crontab, use crontab -e and to delete all crontabs use crontab -r.

Note that crontab -r will destroy all your crontabs, that's why it's a good idea to keep your crontab commands in a cron-file.

Cron is only supported in unix operating systems.

wipe-modules in action!

Watch this screencast to learn how to use wipe-modules and see what it does.

asciicast

License

MIT © Enrique Benitez

 相关资料
  • Wipe Slider 是一个 jQuery 插件,它使用背景、背景位置和中心位置来创建旋转滑块效果。

  • 问题内容: 在目录中(至少在Windows中),有一个名为的新文件,其大小约为107 MB。是否可以提取该文件或在其中列出Java模块? 我可以看到一个所谓的新工具可在,但就是读它位于文件,它不能读取文件。 问题答案: 该文件是容器文件。它在JDK内部,并且没有记录格式(它随时可能更改)。为了进行故障排除,bin目录中的工具可用于列出或提取内容。

  • 问题内容: 我正在使用maven和java-9构建项目。我已在文件中添加: 但仍然要运行该应用程序,我必须像这样运行它: 有没有一种方法可以构建应用程序,以便从命令行运行而无需使用Java命令行参数? 问题答案: 不久前,我做了这个回答,在此我作为使用Maven 公开Java-9 中非软件包的附加信息进行了回答。 添加的部分专门针对使用独立版本的 API。为了适应这种情况,您可能开始消耗依赖项 ,

  • 本文向大家介绍Vuex modules模式下mapState/mapMutations的操作实例,包括了Vuex modules模式下mapState/mapMutations的操作实例的使用技巧和注意事项,需要的朋友参考一下 当我们使用 Vuex 实现全局状态维护时,可能需要将状态值划分多个模块,比如一些 root 级的用户登录状态,token,用户级的用户信息,购物车级的购物车信息。 下面我们

  • 本文向大家介绍Yii2 如何在modules中添加验证码的方法,包括了Yii2 如何在modules中添加验证码的方法的使用技巧和注意事项,需要的朋友参考一下 最近玩了下Yii2的验证码部分,正常的逻辑都可以走通的,网上的例子也是没有问题的,关键有问题的部分是在module中使用的时候,分享给大家,往下看之前可以去看看正常情况下是如何使用的。 controller部分的代码,这里的跟网上的都类似

  • 本章描述 Linux 核心如何只在需要的时候才动态加载函数,例如文件系统。 Linux 是一个完整的核心,就是说,它是一个单一的巨大的程序,核心的功能组件可以访问它的所有的内部数据结构以及例程。另一种方法是使用一个微内核的结构,核心的功能片被分成独立的单元,互相之间有严格的通讯机制。这样通过配置进程向核心增加新的组件不花多少时间。比如你希望增加一个 NCR 810 SCSI 卡的 SCSI 驱动程