File Replacement Utility

by Dmitry Kirsanov 24. August 2011 22:48

Ok, here is another command line tool. This time - for developers who create software made of many components.

Imagine, you have a product which consists of main executable file and multiple dll files. And different people are working on these. And you are deploying it all on multiple machines and never know where it could be hiding. Maybe in some build directories, maybe somewhere else.

So this utility will find all instances of that file and replace with the newest one. Moreover, you can even select the older file, but all files will be replaced by the newest found. Well, there are parameters, of course.

As the searching for files is time consuming, the end result of this utility could be a batch file (.bat) which contains commands to repeat operation. It will take the same source file and put it to the same destinations as during the first run. That way, continuous replacing won't be a problem or take more than a couple of seconds.

So, here it is. Requires .net framework 3.5.

filereplace.rar (5,32 kb)

UPDATE 03/MAY/2016: Updated application to version 1.2.1 - fixed bug when file couldn't be found using the /d switch

7-Zip Converter

by Dmitry Kirsanov 23. August 2011 23:05


7-Zip is the most effective file archive format, which exceeds by far both ZIP and even RAR in terms of compression level. When I realized that a few years back, and when all tests proved I could store more files without the need of buying new and expensive hard drive, that was kind of relief, as I have a huge repository of files. A few terabytes.

You would ask why do I need so much storage, but the fact is – among other trades I am also a trainer, and I need to store my training materials somewhere. And these are mainly not the media files, which are generally well compressed and couldn’t be squeezed further, but documents and images of hard drives and DVDs (iso files and similar). Anyway – something that could be compressed.

The problem was – all these thousands of files were already compressed by ZIP. The least effective but also the most compatible file format. I own a license for WinRAR, so opening any sort of archive isn’t a problem for me, but I didn’t want to either keep old files in ZIP form when I could compress them up to 10 times better, nor convert ZIP files to 7-ZIP manually. No, I needed to convert ZIP files to 7-ZIP automatically.

WinRAR, is quite useful and user-friendly (even though it has one of the worst customer support in software industry), it's compression ratio is not the best, comparing it to less visually attractive free 7-Zip. However, since my precious archives consuming terabytes of data, and hard drives are still quite expensive, especially when you are planning for some redundancy, space becomes more important than graphical user interface of archiver's shell.

However, one little freeware thing that comes with WinRAR is called “RAR converter”, or “rarcvt”. It comes in form of command line utility and is able, using WinRAR, decompress other archives, be it ZIP, CAB, ARJ or even ISO and RPM into RAR. I wanted that functionality for 7-ZIP, but it was nowhere to be found.

So I had to create it myself. I took Visual Studio and in a few hours made what is called now a 7-ZIP converter. This command line utility was tested on thousands of nested archives and proved to improve the efficiency of data storage from at least 1 and up to 99%. Sometimes there were situations when I couldn’t believe my eyes how it was able to repack the ZIP file into 7-ZIP, and the end file was whopping 100 times smaller than ZIP!

I believe that this utility is essential for file server system administrators, as well as for home servers or even personal notebooks, where storage space is quite limited. It does not require installation, but you should have .NET framework 3.5 installed (you already have it in Windows Vista and Windows 7) and, of course, 7-zip. Config file can be edited in Notepad, it has just 3 parameters - the path to 7-zip, path to temporary directory and extensions of archives that should be converted.

Utility finds files by file mask, may convert nested archives (that is - when you have one archive inside of another), can delete the original file after conversion and may set the time stamp of original file to the resulting 7-zip archive.

Well, here it is!

7-Zip Converter Screenshot

7ZipConverter.7z (6,27 kb)

Learn or Die

by Dmitry Kirsanov 1. August 2011 06:28

Gather round digital denizens, and listen as I giddily proclaim the arrival of the First Postulate in all its shining glory. What is the First Postulate, you ask? Well in short, it's essentially my cynical Andrew Carnegie philosophy - quit the learning, commence the dying. Dramatic much? Maybe, but let me unwrap this intellectual fortune cookie for you...

Now, straight off the bat, let me clarify that we're not talking about the world of the cold, calculated IT training, though it might sneak in every now and then. No, fellow travellers on this voyage of discovery, we're setting sail on the boundless oceans of life. Sink your teeth into everything that is new, unexpected and even outright boring. Come on now! Have a real bite!

Okay, so you might have tossed your telly out the window, fed up with the mind-numbing monotony of reality TV. But surely you don't need to be a couch potato to know your LCDs from your Plasmas, or LEDs for all that matters. You may not don 3D glasses for a trip to fantastical realms on weekends. However, knowing there are gizmos out there that offer you this psychedelic journey won't kill you (but not knowing might, according to the postulate...).

Complete ignorance in any sphere is as taboo as pineapple on pizza to some folks. So tune into some electronica or experimental jazz even if it sounds like aliens communicating. Spend an hour a week diving into an ocean of literature, maybe try bobbing around in some dystopian currents or cheesy romance whirlpools you wouldn't normally venture into. This is not only to add a bit of spice to your life, but also to keep the old noggin sprightly, enduring and ever evolving. Yes, we're jazzing up your brain, folks.

And this little exercise in mental gymnastics isn’t for nothing. It's aiming for that golden target - improving the quality of life. There's an upgrade waiting for everyone, dare to download it. And remember, sharing this knowledge is like passing the controller in a multiplayer game. We're all in this together, team.

Don't switch off just yet, though. We're just getting started. Our future chats will touch upon the twins of creative disruption - innovation and creativity. So keep those gears turning and until next time, remember - dead is the brain that learns no more. ‘Til then, keep scrolling...