shelmet (via) This looks like a pleasant ergonomic alternative to Python's subprocess module, plus a whole bunch of other useful utilities. Lets you do things like this:
sh.cmd("ps", "aux").pipe("grep", "-i", check=False).run("search term")
I like the way it uses context managers as well: with sh.environ({"KEY1": "val1"})
sets new environment variables for the duration of the block, with sh.cd("path/to/dir")
temporarily changes the working directory and with sh.atomicfile("file.txt") as fp
lets you write to a temporary file that will be atomically renamed when the block finishes.
Recent articles
- My AI/LLM predictions for the next 1, 3 and 6 years, for Oxide and Friends - 10th January 2025
- Weeknotes: Starting 2025 a little slow - 4th January 2025
- I still don't think companies serve you ads based on spying through your microphone - 2nd January 2025