npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

file_subfolder_subdivider

v0.7.2

Published

subdivide files in a folder into subfolders

Downloads

9

Readme

file_subfolder_subdivider

What a niche tool.

Make subdirectories in the current directory, and move batch files into them by wildcard, to cope with NTFS directory read overload problems.

You do not need this tool.

 

 

... what?

I know, right?

Suppose you're working with frames from video, and you've produced a directory with some ungodly number of PNGs in it. It turns out that modern NTFS struggles to list a directory somewhere over 15-20k, whereas a 2 hour film on typical American settings is 174k frames, so, ... problem.

Before a proper cope, this tool is to be deployed.

What this tool will do is create a stupid and inappropriately high number of subfolders (by default 500) then attempt to bulk move files into them with wildcards (by default 10k at a time,) which involves no directory listing and therefore proceeds at typical speeds.

This process proceeds by default for 5m frames, an unrealistically high number, because moving a wildcard range of files that doesn't exist isn't actually an error.

After this process, each folder contains a number of files which can be handled in regular time, so we can just descend into the folders in reverse, and prune them until we find one that isn't empty, yielding a properly lengthed list of directories containing all the frames in range subdivisions.

After this process, the range subdivisions can be imported without slowdown problems in your video editor of choice.

 

 

... ... what?

frame_folder_subdivider

This will assume the filename frameXXXX????.png, where XXXX is an increasing number produced by the tool over 0000..0499 by default, and where ???? is the literal mask passed to the move command. This will move 500*10000 five million frames maximum in blocks of ten thousand each. Assuming 174,000 frames, this will create 18 directories.

file_folder_subdivider --prefix="image" --range=800 --length=3 --masklength=3 --suffix=".bmp"

This will assume the filename imageXXX???.png, where XXX is an increasing number produced by the tool over 000..799 by default, and where ??? is the literal mask passed to the move command. This will move 800*1000 eight hundred thousand frames maximum in blocks of one thousand each. Assuming 174,000 frames, this will create 174 directories.