Tuesday, December 23, 2008
Fields vs. Properties
Monday, December 22, 2008
Google Calendar Sync
Wednesday, November 26, 2008
Vista Frustration
Thursday, November 20, 2008
BeginRead Weirdness
Saturday, October 25, 2008
Drive Space Recovery
Sunday, September 18, 2005
Tinkering
It's been way too long since my last post. A couple of weeks ago, the whole family came down with some sort of sinus infection. I'm still not quite done with it, but I think I'm through the worst. This weekend I felt well enough to tinker around with my old Gateway PC. One thing had been really frustrating me for a while: I couldn't boot from a CD-ROM. Not only that, but if I tried using something like SmartBootManager or another Torito stack trick to boot the CD-ROM, I would get an Error 0xAA message. So booting from the CD-ROM was a no-go, even with a boot floppy. I thought maybe it had something to do with the fact that I had upgraded the CPU a couple years back using one of the Evergreen Spectra kits. I took the PC apart and put the old 100 MHz chip back in and flashed the BIOS back to the gateway supplied one (1.0.10.BR0T). It was kind of nostalgic to see that Gateway 2000 logo popup again when I booted the PC.
Anyway, booting from the CD-ROM was an option again in the bios, so I flipped it on and put in my SLAX live CD. Unfortunately, I got an ISOLINUX error. Evidently it was able to try to boot from the CD-ROM, but it ran into some other hurdle in the process. Fortunately, I have lots of spare CD drives hanging around. I took the spare Dell one and put it in, and sure enough it booted up fine. Something about that Plextor CD-R/W was not happy about booting. So then I thought, well maybe I can get this guy to boot to CD-ROM with the upgraded chip back in there. Well, it doesn't work perfectly, but using the SmartBootManager disk I can get it to boot to CD-ROM with the 400 MHz chip installed. Huzzah!
That leads to tonight. I've been trying to get the latest distro of Slackware Linux (10.2) running. It's installed, and I can use it, but it won't recognize my USB mouse. I have a PS/2 mouse plugged in now, and it likes that, but it is sort of a pain because the cable from the KVM is USB. So now I have 2 mice on my deks, one for the Dell, and one for the Gateway. Solving problems like this is part of the "joy" of using Linux. I'm sure I'll have it figured out in the next couple of days, or else I'll just switch to the next distribution.
Wednesday, July 27, 2005
FINDSTR
I learned how to program in a UNIX environment. In a UNIX environment, almost everything is done from the command line (or can be). Sure, there was a GUI that you could click around on, but if you really wanted to get something done, your just wrote a script for it and fired it off on the command line. One of the tools that was really useful was the "grep" command. This command would take a search string as an argument, and then search through all of the files in the directories you specified for that string. It was very useful when debugging code, because you could quickly determine all of the code files that touched a particular class or header file.
Sadly, grep was missing from my list of command line utilities when I moved over to developing on a Windows platform. In fact, the command line was pretty well shunned. Instead, Visual development was the word of the day. I still missed my friendly grep command though. Sometime last fall, I discovered the FINDSTR command in windows. On the command line, the FINDSTR command works much like grep in that it will search for a given string in the subdirectories you specify. It's much handier (to me anyway) than the graphical search tool because I don't have to worry that it isn't skipping files it doesn't recognize as text files. If you want to use it, here is the info:
Searches for strings in files.
FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file]
[/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]]
strings [[drive:][path]filename[ ...]]
/B Matches pattern if at the beginning of a line.
/E Matches pattern if at the end of a line.
/L Uses search strings literally.
/R Uses search strings as regular expressions.
/S Searches for matching files in the current directory and all
subdirectories.
/I Specifies that the search is not to be case-sensitive.
/X Prints lines that match exactly.
/V Prints only lines that do not contain a match.
/N Prints the line number before each line that matches.
/M Prints only the filename if a file contains a match.
/O Prints character offset before each matching line.
/P Skip files with non-printable characters.
/OFF[LINE] Do not skip files with offline attribute set.
/A:attr Specifies color attribute with two hex digits. See "color /?"
/F:file Reads file list from the specified file(/ stands for console).
/C:string Uses specified string as a literal search string.
/G:file Gets search strings from the specified file(/ stands for console).
/D:dir Search a semicolon delimited list of directories
strings Text to be searched for.
[drive:][path]filename
Specifies a file or files to search.
Use spaces to separate multiple search strings unless the argument is prefixed
with /C. For example, 'FINDSTR "hello there" x.y' searches for "hello" or
"there" in file x.y. 'FINDSTR /C:"hello there" x.y' searches for
"hello there" in file x.y.
Regular expression quick reference:
. Wildcard: any character
* Repeat: zero or more occurances of previous character or class
^ Line position: beginning of line
$ Line position: end of line
[class] Character class: any one character in set
[^class] Inverse class: any one character not in set
[x-y] Range: any characters within the specified range
\x Escape: literal use of metacharacter x
\xyz\> Word position: end of word
For full information on FINDSTR regular expressions refer to the online Command
Reference.
