← back to Factory Floor
inventory-missing.sh
30 lines
#!/bin/bash
PROJECTS=(
1890swallpaper 1900swallpaper 1940swallpaper 1950swallpaper 1970swallpaper
1980swallpaper apartmentwallpaper architecturalwallcoverings bestwallpaperplace
blockprintedwallpaper chinoiseriewallpaper designerwallcoverings flockedwallpaper
glassbeadedwallpaper goldleafwallpaper grassclothwallpaper greenwallcoverings
healthcarewallpaper hollywood-wallcoverings hospitalitywallcoverings hotelwallcoverings
madagascarwallpaper micawallpaper mylarwallpaper naturaltextilewallpaper
naturalwallcoverings raffiawallcoverings raffiawalls retrowalls saloonwallpaper
screenprintedwallpaper silkwallcoverings silkwallpaper stringwallpaper textilewallpaper
vinylwallpaper wallpapercanada wallpapercontractor wallpaperdefinitions
wallpaperdictionary wallpaperdistributors wallpaperestimator wallpaperglossary
wallpaperhistory wallpapersback wallpaperwednesday wallsandfabrics
)
for name in "${PROJECTS[@]}"; do
dir="$HOME/Projects/$name"
[ ! -d "$dir" ] && { echo "$name|NO_DIR"; continue; }
entry=""
for f in server.js app.js index.js; do
[ -f "$dir/$f" ] && { entry="$f"; break; }
done
[ -z "$entry" ] && { echo "$name|NO_ENTRY"; continue; }
[ ! -f "$dir/package.json" ] && { echo "$name|NO_PKG|$entry"; continue; }
has_nm="N"
[ -d "$dir/node_modules" ] && has_nm="Y"
port=$(grep -oE "process\.env\.PORT \|\| [0-9]+" "$dir/$entry" 2>/dev/null | head -1 | grep -oE "[0-9]+$")
[ -z "$port" ] && port=$(grep -oE "\.listen\([0-9]+" "$dir/$entry" 2>/dev/null | head -1 | grep -oE "[0-9]+")
echo "$name|OK|$entry|port=$port|nm=$has_nm"
done