Autosave untitled/new Notepad++ files

I often type random notes into a Notepad++ new file (AKA untitled). Sometimes these are important notes that I don’t want to loose. Most of the time I remember to save these somewhere, or at least I remember when closing Notepad++. But on one occasion I forgot the save it, and then accidentally clicked ‘No’ when it asked me if I wanted to save the file. Arg. Important notes lost…

But I found the answer. The plugin called Autosave will save these new (AKA untitled) files every X minutes, or when Notepad++ looses focus, or both.

You can get Autosave here:
or here:

Then figure out if you’re using the Unicode or ASCII version of Notepad++ by navigating to the menu bar in Notepad++, clicking the “?” and then going to “About Notepad++”. Most likely you’ll be running the Unicode version. In that case you’ll use the AutoSaveU.dll.

After you know your Notepad++ flavor, grab the respective dll and place it in your plugins folder under the Notepad++ folder. For me this is:
C:\Program Files (x86)\Notepad++\plugins

Then restart Notepad++ and modify the options by going to the Notepad++ menu bar and navigating to Plugins->AutoSave->Options.

I like my AutoSave configured to the following:autosave

Bash: Run command after another

What many of you probably know is that you can chain commands together with the semicolon. Like so:

So here we’re running a unixbench, and then directly after, we’re appending “unixbench finished” to unixbench.log.

But what you might not know about is the ‘&&’ replacement for ‘;’. This will only do the next command if the first command returns 0, meaning clean finish.

And taking it a step further, there’s ‘||’ which does the opposite of ‘&&’. If the first command fails, then the next command happens.


Ubuntu 12.04 x86_64 Poor Performance on Hyper-V in Windows 8

As of the Hyper-V Version: 6.2.9200.16384, Ubuntu 12.04 x86_64 performs very slow as a guest os. I switched to CentOS 6.2 x86_64 and performance was dramatically increased. It should be noted that “Linux Integration Services Version 3.4 for Hyper-V” was installed on the CentOS system, but not the Ubuntu system. I’ll investigate this at a later date.

I’ll post a unixbench of both VMs when I get a maintenance window. But for now, examine these load averages. Both running a minecraft server (Bukkit 1.4.6-R0.1) of the same world with the same amount of people. Both had 4GB of ram and 4 CPUs.

Ubuntu 12.04 x86_64: load average: 2.65, 2.92, 2.47

CentOS 6.2 x86_64: load average: 0.14, 0.11, 0.09


EDIT 12/27/2012

UnixBench Ubuntu 12.04

UnixBench CentOS 6.2

rc.local and sudo on CentOS

If you have a sudo command you’re trying to run at startup in your /etc/rc.local on a CentOS system, it might not work. The reason is the following error that’s buried in the /var/log/boot.log file:

It might be hard to find, but you can always add a ‘sleep 30’ before your sudo command in your /etc/rc.local. This way, the message will show up at the end of the boot.log

Anyhow the reason this is happening is for security. To allow sudo on boot, run ‘visudo’ as root and comment out ‘Defaults requiretty’ as seen below:

Now your sudo command should run just fine at boot time.


Here’s an example of why you might want to run sudo at boot.

In the above command, I’m running the script startMinecraft, as the user minesrv. startMinecraft has some screen magic, and I want it tied to the minesrv user.

Startup script for GNU screen

Here’s how you start up a GNU screen session at startup and give it a command to run.

So in this case we’re starting a minecraft server in a screen session.

Per the man page -dm does the following:

the -S gives the screen session a name so it’s easier to find later on.

Then it runs the command, java, with its parameters.


Another useful tool is sudo, so we can run our above startup script as a different user than root.

startMinecraft is the first bash script above. Here we’re using sudo to run it as the user ‘minesrv’.

The -i makes sudo perform all the standard login processes before running the script.


And finally, you can just reference the startup script inside /etc/rc.local for most linux distros. That will make the script run at startup.



Kitty and SuperPutty: fix for -cmd

If you’re using SuperPutty ( and KiTTY ( there is a slight bug where the passed in -cmd on the Extra Putty Arguements won’t work. It turns out, KiTTY ignores the -cmd argument when a -load is added, and SuperPutty uses this argument to load the session.

Fix for now: Make sure your Putty Session Profile is blank. This will stop the -load argument from being passed to KiTTY, and will allow your -cmd argument to work.

I’ve asked KiTTY to allow the -cmd to overwrite any autocommand in a -load session. As of these versions, this bug still exists:


Update Nov. 11th

I figured out kitty_portable.exe will use what you put in the “Default Settings” profile even if you don’t specify this session on -load. The regular kitty.exe was not doing this. Very handy!

Search multiple files and prepend file name


Capture with tcpdump and read in Wireshark on another computer

To capture a tcpdump that’s readable from wireshark do the following:

Where <interface> is coming from an ifconfig, and <some-file>.cap is your capture file name, i.e. tcpdump_09242012.cap.

Then just transfer to a computer with wireshark. *.cap should already be a filetype assigned to wireshark so you can just double click it.

I’ve successfully done this tcpdump on a RHEL5 system.

Matrix Mixer On The Cheap

I wanted a way to mix my audio signals coming from my computer, XBox, and TV into the same audio stream. The device you use to do this is called a matrix mixer. Generally they’re 1000+ USD. But I found a product that’s designed for home recording studios that will do it on the cheap.

Enter the Behringer MINI MON MON800 Ultra-Compact Stereo Monitor Matrix Mixer

Here’s what it looks like:

At around 60 bucks, this is quite the steal. It’ll mix up to four stereo analog inputs into 1 stereo stream that can be outputted on 4 stereo outputs. Two of those outputs (B+C) are controlled by one volume knob, while the other two (Headphone Out and A) have individual volume controls.

So why do you want this? Well now I can listen to some music on my home theater while I play xbox through the same speakers. I also never loose audio signal when my computer turns off the TV. I’ve also mixed my home recording onto one of the channels so I can jam out over the home theater speakers without having to click any buttons on my remote.

Granted, this will only handle stereo setups. I use it on a 2.1 setup. Sounds great over my Boston Acoustics floor standings and a Mirage sub. I can’t hear any degrade in signal from when I was running optical to the Denon Receiver.