The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,835 other subscribers

Archive for the ‘Scripting’ Category

Devs of VS Code extensions are leaking secrets en masse • The Register

Posted by jpluimers on 2026/05/07

Reminder from a while back: all your development tools are belong to us: [Wayback/Archive] Devs of VS Code extensions are leaking secrets en masse • The Register

--jeroen

Posted in Development, JavaScript/ECMAScript, Scripting, Software Development, TypeScript, vscode Visual Studio Code | Leave a Comment »

Wondering if the takeown/icacls/del trick still work to screw up %windir%\system32 (via Patrick Doyle on Twitter)

Posted by jpluimers on 2026/05/07

A few years back this trick was shown to screw up %windir%\system32 [Wayback/Archive] Patrick Doyle on Twitter: “@SwiftOnSecurity @RoseAreaZero Delete any file in three easy steps: > takeown /F "example.ext" > icacls "example.ext" /grant "%USERNAME%":F > del "example.ext".

Like [Wayback/Archive] SwiftOnSecurity (@SwiftOnSecurity) / Twitter (see the long thread further below), I was expecting that Windows would either prevent you from doing this at all, or allow for easy recovery with System File Protection (now Source: Windows File Protection).

That didn’t prevent or recover it back then.

I wonder if that has been changed by now.

From the above Tweet:

Delete any file in three easy steps:
> takeown /F "example.ext"
 > icacls "example.ext" /grant "%USERNAME%":F
 > del "example.ext"

Read the rest of this entry »

Posted in Batch-Files, Development, Power User, Scripting, Security, Software Development, Windows, Windows 10, Windows 11, Windows Development | Leave a Comment »

AbortController is your friend

Posted by jpluimers on 2026/05/06

Cool post [Wayback/Archive] AbortController is your friend starting with

One of my favorite new features of JS is the humble AbortController, and its AbortSignal. It enables some new development patterns, which I’ll cover below, but first: the canonical demo.

It’s to use AbortController to provide a fetch() you can abort early:

It then continues with a series of nice use cases.

Via [Wayback/Archive] Roderick Gadellaa on Twitter: “Late to the party here (was published in June last yr) but great read if you (like me) missed it”.

Video at [Wayback/Archive] AbortController is your friend – YouTube.

–jeroen

Read the rest of this entry »

Posted in Development, JavaScript/ECMAScript, Scripting, Software Development, Web Development | Leave a Comment »

bash script for $* loop accept command line with spaces in wildcard file names at DuckDuckGo

Posted by jpluimers on 2026/05/05

Back when I wanted a more universal solution [Wayback/Archive] bash script for $* loop accept command line with spaces in wildcard file names at DuckDuckGo I got into a mess of tips that either did not work at all, or were very convoluted.

As back then I only needed a one-time solution, I just listed the filenames with ls into a text file, did some sed and editing steps, then had each file execute in a separate step. Low tech, non-repeatable when new files appeared, but good enough.

In case I want to go for a more universal solution, below are some links to investigate further. Will likely take me hours, so most of the time this is not worth it. Maybe the subshell plus $IFS (Input Field Separators) is a good start, though it gives me a feeling that in the future it will break something else that was expecting a default $IFS value, as is using while read loop. Both types of solutions feel too convoluted. Same for the array solution below.

I might have just been spoiled with PowerShell piping objects instead of strings having made life so much easier.

Read the rest of this entry »

Posted in *nix, *nix-tools, ash/dash, bash, bash, Development, Power User, Scripting, Software Development | Leave a Comment »

A retro font: Glass TTY VT220

Posted by jpluimers on 2026/05/04

Via [Wayback/Archive] Der Kneisner M100 – oder das “once in a lifetime project” | Computermuseum Visselhövede, about an IMSAI 8080 clone, I bumped into the VT220 based Glass TTY VT220 font and found some links of it and it’s modifications which are listed below by category

Read the rest of this entry »

Posted in 8080, Development, Font, History, JavaScript/ECMAScript, LifeHacker, Power User, Retrocomputing, Scripting, Software Development | Tagged: , , , | Leave a Comment »

Some Twitter internals after I found GitHub – offish/twitter-broadcast-downloader: Download Twitter broadcasts/lives

Posted by jpluimers on 2026/04/30

Found this while trying to find the source from which I constructed this Bookmarklet which from a Tweet URL returns the JSON metadata which has all the links to media (like images and videos) as it failed for broadcasts:

javascript:{ tweetID = document.location.href.split('/').filter(e => e).slice(-1); url = new URL(`https://cdn.syndication.twimg.com/tweet-result?id=${tweetID}&token=!`); open(url); }

I could not find that back, but did find [Wayback/Archive] GitHub – offish/twitter-broadcast-downloader: Download Twitter broadcasts/lives via these query steps:

Read the rest of this entry »

Posted in Bookmarklet, Development, JavaScript/ECMAScript, Power User, Scripting, Software Development, Web Browsers | Leave a Comment »

YOURLS/YOURLS: 🔗 The de facto standard self hosted URL shortener in PHP

Posted by jpluimers on 2026/04/28

In case I ever want to run my own URL shortener: [Wayback/Archive] YOURLS/YOURLS: 🔗 The de facto standard self hosted URL shortener in PHP

Via:

jeroen

Posted in Development, PHP, Scripting, Software Development, Web Development | Leave a Comment »

Memories of my AS/400 and OS/400 days: PUB400.COM – Your public IBM i server

Posted by jpluimers on 2026/04/22

[Wayback/Archive] PUB400.COM – Your public IBM i server:

Read the rest of this entry »

Posted in AS/400 / iSeries / System i, COBOL, Development, RPG, Scripting, Software Development | Leave a Comment »

Updating Microsoft Office on Windows from a batch file

Posted by jpluimers on 2026/04/21

This batch file works for modern Click-to-Run (sometimes called ClickToRun, Click2Run or C2R) based Office installations (note the odd lowercase microsoft shared which indeed is the actual directory name):

if exist "%CommonProgramFiles%\microsoft shared\ClickToRun\OfficeC2RClient.exe" (
  "%CommonProgramFiles%\microsoft shared\ClickToRun\OfficeC2RClient.exe" /update user
) else (
  echo could not find the Office Updater
)

This for sure does not work for MSI based Office 2013 and lower (which are updated through Windows Update anyway). Since I only have 2021 online (Click-to-Run) installs and higher to test with: those work fine.

Read the rest of this entry »

Posted in Batch-Files, Development, Office, Office 2021, Office Development, Power User, Scripting, Software Development, Windows, Windows Development | Leave a Comment »

Some pages that have lists of Amazon toplevel domains

Posted by jpluimers on 2026/04/16

Amazon has activities spread across many different countries and regions, heck they even own their own toplevel domain .amazon.

Yesterday in Online tools to test JSONPath Queries (plus a small list of Amazon top level domains) I wrote about the JSON parsing I did for Download your Kindle books soon, because Amazon will block them after February 25, 2025 .

The source of that list is [Wayback/Archive] Amazon operating domains by country. · GitHub [Wayback/Archive] in the file amazon-domains.json.

In the meantime, I finally managed to go through a list of old open browser tabs having more of such lists. Here they are:

Read the rest of this entry »

Posted in Development, JavaScript/ECMAScript, JSON, JSONPath, Scripting, Software Development, Web Development | Leave a Comment »