Welcome to MY world, Microsoft OneDrive!

Welcome to MY world, Microsoft OneDrive!

Oh, this is RICH and IRONIC! Get a load of these error messages!

The name contains characters that aren't allowed.

REALLY!

So, let me get this straight. After THIRTY-FIVE YEARS of struggling against DOS' and Windows' psychopathic devotion to using backslashes as path delimiters instead of an escape character, and actively encouraging the entire world of Windows users to casually use space characters (and even parentheses) when creating new directories or files (C:\Documents and Settings\ or C:\Program Files\, anyone?), now, in the Year of Our Lord 2023, OneDrive has the gall to bitch about which characters are allowed in filenames?

WELCOME TO MY WORLD!

You see, trying to interoperate with Windows from all flavors of Linux, Unix, BSD, and MacOSX has been a royal pain in the butt, because the command line environment uses characters like space, parentheses, and many others to mean and perform rather useful things, all of which have held back Windows from being useful.

So during all this time, we Linux professionals have had to master a few tricks to help us process files that have these shell metacharacters in them. They include:

  • Using find with the -print0 switch to generate lists of files that are delimited by the NULL \0 character.

  • Piping such output to xargs -0, which tells xargs to read such null-delimited streams.

  • In other environments that don't benefit from pipelines, inserting \\ characters before such characters, trying to put single and double quotes around filename strings (the difference is whether or not variable expansion is done or not)

I would actually root for more widespread adoption of OneDrive, IF AND ONLY IF, it would disallow these shell metacharacters going forward, and over time, train users to not use spaces in their filenames. What an odd thing for me to think....


Disclaimer: This is obviously from a work MacBook, managed by Central IT. You all know I would never put OneDrive on a personal machine. Right?