Node.js – Find home directory in platform agnostic way

As mentioned in a more recent answer, the preferred way is now simply: const homedir = require(‘os’).homedir(); [Original Answer] Why not use the USERPROFILE environment variable on win32? function getUserHome() { return process.env[(process.platform == ‘win32’) ? ‘USERPROFILE’ : ‘HOME’]; }

Iterate through every file in one directory

As others have said, Dir::foreach is a good option here. However, note that Dir::foreach and Dir::entries will always include . and .. (the current and parent directories). You will generally not want to work on them, so you can use Dir::each_child or Dir::children (as suggested by ma11hew28) or do something like this: Dir.foreach(‘/path/to/dir’) do |filename| … Read more

Open directory dialog

You can use the built-in FolderBrowserDialog class for this. Don’t mind that it’s in the System.Windows.Forms namespace. using (var dialog = new System.Windows.Forms.FolderBrowserDialog()) { System.Windows.Forms.DialogResult result = dialog.ShowDialog(); } If you want the window to be modal over some WPF window, see the question How to use a FolderBrowserDialog from a WPF application. EDIT: If … Read more

Can you call Directory.GetFiles() with multiple filters?

For .NET 4.0 and later, var files = Directory.EnumerateFiles(“C:\\path”, “*.*”, SearchOption.AllDirectories) .Where(s => s.EndsWith(“.mp3”) || s.EndsWith(“.jpg”)); For earlier versions of .NET, var files = Directory.GetFiles(“C:\\path”, “*.*”, SearchOption.AllDirectories) .Where(s => s.EndsWith(“.mp3”) || s.EndsWith(“.jpg”)); edit: Please read the comments. The improvement that Paul Farry suggests, and the memory/performance issue that Christian.K points out are both very important.

How to recursively delete an entire directory with PowerShell 2.0?

Remove-Item -Recurse -Force some_dir does indeed work as advertised here. rm -r -fo some_dir are shorthand aliases that work too. As far as I understood it, the -Recurse parameter just doesn’t work correctly when you try deleting a filtered set of files recursively. For killing a single dir and everything below it seems to work … Read more