Archive for category OS X

OS X and Reading Text

Apple’s OS X allows you to zoom in on your screen in a number of different ways.  It also can read text to you, if you are so inclined.  There are many ways to do this, depending on which hardware choice you made.

If you have a track pad on your Mac, and it supports gestures (all Intel versions do, and some late G4 PowerBooks) you can simply spread two fingers apart on the track pad to have it zoom text.  To accomplish this with a mouse, If you’d like to zoom in on the entire screen rather than just make text bigger, hold down the control key (two keys left of the spacebar) and slide two fingers from the track pad’s button toward the screen.  A third option is to hold down command (⌘) and hit + to make text bigger.  Alternatively, command (⌘) – makes it smaller.

Even better, you can easily set up OS X to read selected text for you, using a keystroke combination that you define.  It comes in handy to select some text, and then let the computer read the selected text to you as you continue to browse around a site.  Naturally, if you cannot see the text to begin with, or have trouble reading from a screen for any number of reasons, this built in feature is priceless.

First, open System Preferences by clicking this icon in the Dock:  Screen shot 2010-03-14 at 12.18.27 PMIf it’s not in the Dock, open Finder, and find your Applications folder.  Navigate to System Preferences and double-click to open.  Once open, click the Speech icon, as shown below on Snow Leopard, it looks like a microphone:

Screen shot 2010-03-14 at 12.20.46 PMOnce there, check the box to “Speak selected text when the key is pressed”, then click on the Set Key button to create a keyboard shortcut to have the computer read text you have selected.  This allows you to also deselect the text, while the computer keeps reading it, which is a pretty nice feature.  You can then even navigate way from the page or text, and look at something else while you are listening to the text being read.

Screen shot 2010-03-14 at 12.26.21 PM

,

No Comments

Moving Around in Vim

I’ve written a couple of beginning UNIX for OS X entries, such as creating a .bash_profile and .bashrc file using vim.  Here is another vim tutorial for moving around in the screen editor, so you can see just how powerful it’s commands can be.

This post will deal with mostly command mode, the default mode when you open vim (or an existing file with it.)  To move the command marker around the file without entering INSERT mode consists of four basic keys.  Moving to the next/previous word, to the beginning of a paragraph, etc. will require a bit more memorization.

You want to first familiarize yourself with the h, j, k, and l keys.  The outer two (on a standard keyboard) move your cursor left or right one-character;  h, to the left, and l to the right.  j will move your cursor up to the next line, while k moves it down one line.  The fact that you are in command mode means no changes are made to your text at this point.  You can use the arrow keys for the same functionality, but getting used to the keys will help you keep your hands where they belong–typing and editing text.

Moving to the beginning of the current line is done by pressing O (zero).  To move to the end of the current line press $+ moves your cursor to the beginning of the next line, and – moves you to the beginning of the previous line.

Next are some basic ideas for commands.  Some will take a number argument, followed by a command.  Some can be written with a number argument followed by another command.  For example, x in command mode means delete a character.  To delete a word, or the rest of a word if you are in the middle of one, you type dw.  If you precede x with a number, n, vim will delete the following n characters from the line.  The command to delete the next four characters would be written, simply, as 4x. To delete the next four words, you would type 4dw.

Vim is a very capable text editor once you learn more about its commands, and get used to bouncing between INSERT and command modes.  Below you can find a table of common commands and their function, at least enough to get you on your way as a skilled vim user.

Movement Command

Function

h

Move Left One Character

j

Move Down One Line

k

Move Up One Line

l

Move Right One Character

0

Move to First Character Of Current Line

$

Move to Last Character Of Current Line

+

Move to First Character Of Next Line

w

Move to Next Word or Punctuation Mark

W

Move to Next Word

e

Move to End of Current Word

E

Move to End of Next Word

b

Move Back to Beginning of Word or Closest Punctuation

B

Move Back to Beginning of Word

)

Move to End of Current Sentence

(

Move to Beginning of Current Sentence

}

Move to Start if Next Paragraph

{

Move to Start of Previous Paragraph

Delete Command

Function

x

Delete Current Character

X

Delete Character Immediately Left Of Cursor

dw

Delete Current Word

10dw

Delete Ten Words

D

Delete To End of Current Line (also d$)

dd

Deletes Current Line

20dd

Deletes Twenty Lines

dG

Deletes From Cursor to End

u

Undo (doesn’t work for single character deletion)

No Comments

Time Machine Not Backing Up Anymore? Try iBackup Instead.

[Check out iBackup here, if you hate to read.]

Well, what I thought was totally awesome the first time I ran it turned out to be not so good.  OS X’s Time Machine let me down, and for the past three days I’ve been searching for a way to fix it.  I managed to make a full backup to my FireWire drive the first time I ran it, and it seemed really cool.  I am backing up to an external FireWire 400 drive, and trying to backup my MacBook Pro.

This is a notebook, and keeping Time Machine running didn’t seem like such a great thing for me.  Keeping an external disk tethered to my MacBook Pro wouldn’t win any awards for mobility, for sure.  I backed up, turned Time Machine off, and ejected my external drive.  I was happy.  A week later, I mounted the FireWire drive, and all seemed well.  Turned on Time Machine, and it recognized the backup, I could flip through hourly backups, and it all looked great.  I tried to run a new backup before going off to sleep, however, the next morning only 27KB had been transferred.

Obviously something went awry.  No errors, no warnings, and the little backwards running icon in the menubar was still happily plugging along.  What was apparent, though, is Time Machine had failed miserably.  As I’ve looked deeper into this across many a forum, as well as various blogs, this is widespread and most users with difficulties such as this have moved to Snow Leopard 10.6.1.  If you are running 10.6.0 and don’t have any issues with Time Machine, don’t update to 10.6.1.  I did run across one cool widget that tells you Time Machines logs, called Time Machine Buddy.

I tried various things, from deleting the com.apple.timemachine.plist file in the Macintosh HD –>  Library –> Preferences folder.  This is a system-wide application and you won’t find a plist file in your home directory.  I tried deleting the partial backup from my FireWire drive, and the alias file as well.  I checked the .Trash folder on the FireWire drive to be sure there weren’t any remnants on the drive.  Reboot after reboot, unmount and mount, nothing would fix it.  So, as a last resort, I formatted the FireWire drive and started over.  I made sure it was set up by the book.  Nothing works to fix it, and the weird part is I never get an error.  On my last attempt before looking into alternatives, I waited 6 hours to transfer 11KB.  The furthest I ever had gotten was 5GB, which I thought would be it.  Nope, stuck there for eternity.  So, until Apple helps us out and gets it fixed, I’m moving on.

I found this sweet donationware application called iBackup.  It doesn’t do nearly what Time Machine is supposed to, but for someone like me who just wants to backup my home folder, where my Sites, Downloads, Documents, etc. reside, it seems like it’s going to work out beautiful.  14GB of data transferred over to my FireWire drive in about 20 minutes, with no headaches.  I like that.  And it’s free for personal use, although I will probably throw the creator a donation because it’s what you should do when someone writes a handy application that you are going to keep using for eternity.  I want them to keep publishing it, of course!
So here are some screenshots, you can read more about the Preferences and Plugins following the images (click to enlarge):

Main iBackup Screen

Main iBackup Screen

System Settings Plugins

System Settings Plugins

Profile Preference 1

Profile Preference 1

Profile Preference 2

Profile Preference 2

Profile Preference 3

Profile Preference 3

Profile Preference 4

Profile Preference 4

Profile Preferene 5

Profile Preference 5

Profile Preference 6

Profile Preference 6

iBackup doesn’t support incremental backups, however, it does only copy items that have been modified.  It uses straight up UNIX commands to copy your files, which you can see in the screenshot directly above, labeled Profile Preference 6.  iBackup, on the initial backup uses the ditto command, and for subsequent backups (I’d rather they called them “synchronizations”), it uses rsync.  As Apple has developers moving away from resource forks, rsync will be an easier tool to use for OS X consumers.  If you hate the Terminal, this backup solution makes it quite easy to use a complicated command.

Other features I like to see, that Time Machine completely lacks, are the ability to backup to Windows hosted shares, via both AFP and SMB servers, ethernet connected drives, as well as encrypted sparse images.  Quite nice.  I must admit, I was going to try Time Machine down the road if I see Apple has fixed it’s problems, but something like iBackup for Mac is a product that will be tough to get me away from.  Being able to use ethernet connected drives on my Gigabit network will certainly be a necessity; since I already own some LaCie drives, I never planned on buying a Time Capsule anyway.

, , , , , , , , , ,

No Comments

Setup Your .bash_profile On OS X | A Sample Bash Profile

This is another addition to my entry level OS X shell category.  This one covers setting up a more detailed bash profile, so certain things are done by default when you open your Terminal.

We start by opening the Terminal in your ~/Applications/Utilities folder. If you don’t know what that means please start with this post, as it will show you a very basic beginning to the Terminal in OS X.  Be sure you are in your home directory by typing pwd at the bash prompt and hit enter.  It should look similar to this:

ssBashProfileSetup1

Next, we start vim opened to your .bash_profile.  At the bash prompt type vim .bash_profile and hit enter.  If the file exists, it will open it, if not it will create one for you.     Your Terminal window should now look like this:

vim .bash_profile

My screen shows one alias I created in my last tutorial. I like that one but technically it doesn’t belong in your .bash_profile, it belongs in a file called .bashrc. The .bash_profile is for your login shell options, and the .bashrc file is read for subsequent interactive shells;  meaning a shell opened to type commands, not just to run a script from a file automatically.  You can launch another shell on top of your login shell by typing the shell name at the prompt, i.e., bash, and then hitting enter.

This lesson will focus on login defaults, such as the PATH variable in your .bash_profile. In the process, we will be using vim, so if you are unfamiliar with that, practice makes perfect!

The PATH variable is where the system searches for binaries (shell scripts, programs, etc.) to execute.  All UNIX systems provide a default path, but you can add to it.  As you add scripts of your own creation and such, you probably want to create a directory in your home folder to store them.  This way if you screw something up, it will affect you and not the system.  For example, an erroneous rm command if you are in the /bin directory could be really bad news.

Let’s go ahead and first create a new directory called bin in your home directory.  Create a new interactive shell by pressing ⌘-N.  Type mkdir bin and hit enter.  Now type ls and hit enter.  You should see the new directory listed with your other folders:

mkdir Command

This is where you can store any shell scripts that you create, as they are easy to find in this folder.  In vim, type “i” without quotes to get you into INSERT mode.  You will see –INSERT– at the bottom of your Terminal window.  Now you can begin typing text.  You should comment your script files, and your other various profiles so you know what something does if you ever need to edit.  It’s just good programming practice to get the comments done as you progress with coding, not when you’re done!

To make a single line comment, the first character on the line needs to be the pound sign, #.  Type in #Additional binary folders, and hit enter.  Next, we set the PATH like so, to *add* to the default PATH: export PATH=$PATH:/Users/yourusername/bin

You can see in my screenshot below what the file should look like.  Replace the yourusername with your actual username for your account.  Mine is Tech, so that’s how it shows in my screenshot.  Also keep in mind, that UNIX is case-sensitive:

Bash Profile PATH

Now you can save this by hitting the escape key, and typing :w then pressing enter.  Let’s add some more commands to the profile.  We can set a welcome message to the login, and set the shell’s timer to check for new mail.  This really only matters if you use a text-only mail client, such as PINE or Alpine.  It will not affect the OS X Mail client.

Set a message to display when you login with the echo command.  This is a good command to know for the command line as well, as you can see certain system variable settings, such as your current PATH.  You can do this by typing echo $PATH at the bash prompt and hitting enter.  To use echo in your .bash_profile to set a welcome message, type echo followed by the message:

echo Welcome back, Mr Awesome!  Your present working directory is: $PWD

looks like this when you log in:

Welcome Message SetTo set the mail check timer, write a line in your .bash_profile like so:  export MAILCHECK=30

The time set is in seconds, and OS X’s bash shell by default is set to 60 seconds.  Your .bash_profile should now look similar to this:

Finished Profile Example

Next time I will cover creating a simple shell script, and changing file permissions to run them.  Also, I will try to cover some common aliases, as well as creating your .bashrc file, which is where we store the aliases.  Thanks for reading, and if you have any suggestions or questions, please feel free to ask!

No Comments

Using vim In OS X — A Text Editor Tutorial For Beginners

Here is a quick tutorial for people unfamiliar with text editors in UNIX.  If you are just getting started with the Terminal in OS X, you probably need to create your .bash_profile and such, so that you can keep your settings upon logging out of the shell.  I will show you how to create this file in a text editor called vim, which stands for vi IMproved.

Vim is  a very powerful text editor, and if you have any experience in UNIX at all, you probably were shown pico, which is easier to use at first due to some of the commands being shown at the bottom of the screen as you work in pico’s buffer.  In pico, there is no separation from command or input modes, also making it a bit less confusing.  The buffer simply means what is shown on your screen, not yet written to disk.  While a GUI text editor such as Microsoft Word or Apple’s Pages do not tell you that you are working in a buffer input mode, technically it is the same thing.  If they crash, you lose what you changed if it was not saved prior to the crash.

Vim is a little obscure, yet extremely functional.  You start vim by typing vi or vim at the bash prompt in Terminal.  Terminal is located in your ~/Applications/Utilities folder by default on OS X.  When it opens, you are by default in command mode.  Vim shows you this startup screen, which has a bunch of tildes (~) on the left-hand side, and some version information in the center:

vim Startup Screen OS X Snow Leopard

vim Startup Screen OS X Snow Leopard

If you type something in, the startup screen goes away and the first tilde also disappears.  The tilde characters simply clarify lines in the buffer.  They will not print, they are just there showing you where the next lines are.  Once started, you are by default in Vim’s command mode.  If you type vim testfile.txt at the bash prompt, vim will open the file testfile.txt in whichever directory you are currently in.  If testfile.txt doesn’t exist, vim will create the file and open into the edit buffer for you, skipping the welcome screen:

Vim Buffer

Vim Buffer

As shown in the screenshot (click to enlarge it, as with all screenshots on this blog), the buffer is in INSERT mode.  By default, no matter what file you open or create, vim starts in command mode.  It doesn’t ever show —COMMAND— at the bottom of the screen.  Vim lets you know you aren’t in command mode by telling you that you are in INSERT mode.

To get back into command mode, which is where you will end up saving files to disk, changing the contents of vim’s 26 named buffers (consider them like the clipboard in a GUI text editor), moving around the screen, deleting lines, etc.  Anything you want to do with the file besides type in text will generally be done in command mode. Let’s save this file now, so you can see how it works to get in and out of command mode.

First, hit the ESC key.  On almost every keyboard ever, this will be the key  at the very top-left corner of the keyboard.  You should no longer see –INSERT– at the bottom of the Terminal window.  Now type the following command, without the quotes:  ”:w testfile.txt“.  See screenshot below:

Write Command

Write Command

File Saved

File Saved

You can see at the bottom of the Terminal window that the write command was successful.  You also see that three lines were written containing a total of 138 characters.  You can verify the file was written by typing (again, without quotes) “:q“, and hit enter.  This quits vim.  At the bash prompt, type “ls” and hit enter.  You should see your new file in the list of the directory.  To remove (delete) the file, type “rm testfile.txt” and hit enter.

Now to create your .bash_profile, so you can save certain settings.  When Terminal starts, it will read this file to load alias information, screen settings and such, if they are explained in this file.  As you become more familiar with the Terminal and start to have preferences for certain things, i.e., showing hidden files when you get a list of a directory, you may want to create an alias for the ls command so it shows them by “default” because of your .bash_profile.

First, navigate to your home directory if you are not there now.  You do this by typing the command “cd ~” at the bash prompt and hitting enter.  Terminal will show your computer name, followed by your present working directory, and yourusername$, which is the bash prompt.  You should see something like this:

Bash Prompt

Bash Prompt

Create your empty .bash_profile by typing “vim .bash_profile”  and hitting enter.  We will create a simple alias and save the profile.  Then we will quit Terminal, restart it and verify the alias still works.

Alias in Profile

Alias in Profile

By default, the alias wouldn’t work again after you quit Terminal.  If it is in your profile, it will work when you open a new Terminal, such is the point of having a profile.  To type in what I show above, press the letter “i on your keyboard to put you in insert mode.  Then type the following exactly:

dirA=”ls -lia”

Hit the ESC key, and type: “:w” to save the file.  Now type “:q” to exit vim and return to the bash prompt.  You can verify the file was written and it’s contents by typing “cat .bash_profile” and hitting enter:

Verify File Was Written

Verify File Was Written

Now quit and re-open Terminal.  You should now be able to get a detailed list of your directory, showing hidden files, by typing dirA and hitting enter:

Working dirA Alias

Working dirA Alias

Next time I will show you how to navigate through text, delete lines and add or retrieve lines to and from the named buffers.  If there are certain things you would like to learn about Terminal or vim, please leave comments below.  Please also let me know if any of this could be better clarified, as I check my comments often and will respond promptly.  Thanks for reading!

, , , , , , ,

No Comments

Common Shortcuts for OS X And Their Windows Equivalents

If you are new to OS X, there are a bunch of shortcuts that you’ll immediately recognize from Windows.  If you don’t use shortcuts at all, you really are missing out, as they are much faster than using the mouse in most situations.  I tout programs like LaunchBar and Colibri because they make your computer usage faster. It is no different for shortcuts built-in to the operating system, so you should really take advantage of them!
Here is a short list of the most common on both OS X and Windows:

OS X and Windows Shortcuts

OS X and Windows Shortcuts

Since Vista was launched, you can create keyboard shortcuts to your programs through the Shortcut Icons that a program creates.  You do this by:

  1. Right-Click the shortcut icon for the program
  2. Left-Click Properties
  3. In the “Shortcut Properties” box, find “Shortcut” tab and Left-Click on that.
  4. Left-Click the “Shortcut Key” box., and type in a letter you want to start the program.  For example, type P for Photoshop.
  5. The box should update to show CTRL-ALT-P, as all shortcuts created in this manner automatically must begin with CTRL-ALT.

, , , ,

No Comments

OS X Common Unicode Symbols and How To Type Them

If you don’t have Unicode Hex Keyboard setup in OS X, please see here how to do so. You will learn how to find a symbol your are looking for, or you can use the chart below for some of the most common ones you’ll see throughout the operating system’s menus.

Key

Symbol

Unicode(Hex)

Command

2318

Control

2303

Option

2325

Alt

2387

Shift

21E7

Forward Erase

2326

Delete

232B

Eject

23CF

Return

23CE

Power Button

238B

-

Copyright ©

00A9

-

Trademark ™

2122

-

Registered ®

00AE

-

Euro €

20AC

-

Apple 

F8FF

, , , , , , , , , , ,

1 Comment

iPhone Doubles Contact List in OS 3.0

Prior to syncing your iPhone with MobileMe, be sure to turn off the syncing of your address book in iTunes or you will end up with double contacts when you view the list “All Contacts” in your address book on your iPhone. This may seem like a no brainer to some, but it had me baffled for a while.
I had an issue with the speaker port on my iPhone 3G, and sorry to say *cough*, it had to be replaced with a new phone under Applecare. I have had “MobileMe” since it was .Mac, so I was in the Apple Store with a fresh iPhone, ready to leave. No contact info in my phone, say wha?!? I don’t know about you, but I don’t memorize phone numbers. I rely on my phone to do that. So I sync up with MobileMe right in the store and I’m good to go.
Here’s the tricky part. I didn’t realize that if I already synchronized with MobileMe, iTunes would still add my contacts from my Mac, even though MobileMe gets it’s list from…my Mac. What I had to do was delete all of my email address information and re-sync with iTunes.
To avoid that mess, before you sync with iTunes, follow the steps below:
First, open iTunes. Go into Preferences in the File Menu, or hit ⌘-Comma. Under Devices, check the “Prevent iPods and iPhones from syncing automatically” checkbox:

iTunes Preferences--Devices

iTunes Preferences--Devices

Now you can plug in your iPhone, ad nothing will be automatically changed.

Next, select your iPhone in the Devices List,  and select the Info Tab at the top.  You want to uncheck any selections in that tab that would also be synced with your MobileMe account:

iTunes iPhone Info Tab

iTunes iPhone Info Tab

If you have doubled your contacts already, you may have to restore your phone in the summary tab, which is unfortunate, but sometimes worth it anyway.  I’ve read some posts about unhappy owners having to do this, as it takes some time.  Before you try that, you may want to sync/unsync whatever duplicate information you have stuck on your iPhone and see if iTunes will remove it.

If you have tried this to no avail, please comment below and I’ll try to help you sort it out.  If it worked, please let me know that, too.

Thanks for stopping by.  :)

, , ,

No Comments

Resizing An Image Without An Image Editor — Using Automator

This is a fast and easy way to scale the size of an image (or a bunch of images) using OS X’s built in utility Automator.  It is very simple (also crude), but it works and the results are pretty decent.

(You can scroll down to the end of the post if you just want the Automator applications and don’t care how I got there.)

First set up the job in Automator by opening the application in /Applications:

Automator Location

Automator Location

Next, choose workflow from the opening screen and select choose (or just hit enter if they’re already highlighted):

Automator Template Chooser

Automator Template Chooser

The next screen has built in functions to select by category.  In the first column, select “Files & Folders“.  Column 2’s selections are based upon what you select in column 1.  Now the next additions to your workflow will depend upon your desired task.  If you’d like to convert a single image, or if you plan on converting a bunch of images in a folder.

First we’ll cover how to make a simple workflow that you can use to select one image, start the workflow, and exit Automator.

With “Files & Folders“ selected in the first column, drag “Get Selected Finder Items“, followed by “Copy Finder Items” into the right hand area.

Next, in the first column, select Photos.  Find “Scale Images” and drag that to the right hand actions area, so it is at the bottom.  Your workflow should look like this:

Workflow to Scale a Selected Image

Workflow to Scale a Selected Image

Next, we want to adjust an options on  ”Copy Finder Items” and “Scale Images”  to force the workflow to ask for a values, rather than having to manually open Automator, change them, and click “Run”.  That Would be tedious, and we are looking for simple.  So, click the options button in the “Copy Finder Items” and ”Scale Images” portions of your workflow, and click the check box “Show This Action When Workflow Runs” in both of them:

Setting Automator To Ask For Values

Setting Automator To Ask For Values

With that done, just use the “Save As” in the file menu (⇧⌘S) and save the file as an application:

Save Automator Workflow As Application

Save Automator Workflow As Application

That’s it, really.  You can now drag an image file onto the new application, it will ask you where to save the resized image, as well as ask you for the type of scale.  You can set by percentage, or by pixels, and set the value based upon how you chose to scale it.  Scaling by pixels appears to be based upon the width, and then uses the same scale factor to the height automatically.

Now, you can adjust this application to do a whole batch of files inside a folder, if you’d like.  First, open Automator, click “Open Existing Workflow”, and choose your new application created above.  Drag “Get Folder Contents” and place it under “Get Selected Finder Items” in the workflow.  Your new workflow should look like this:

Workflow To Scale A Folder Of Images

Workflow To Scale A Folder Of Images

Again, click “Save As” in the file menu, and select a new name for this application.  You can now drag a folder of images and drop it on the application to resize a batch of images.

There are other options in the Photos section of the Library of actions (the left hand column) such as changing the file type as well, for instance if you have a bunch of jpg’s and want to make them png’s for the web.

I hope this gets you interested in Automator–a totally useful and underrated tool–and happy image scaling!

Download the Single File Application or the Folder of Images Application here if you’d like. You can update and change them by opening them with Automator.

, , , , , , , , , , , , , , , ,

No Comments

Simple Introduction To Apple’s Unix Using Terminal on OS X

This post is for someone interested in learning UNIX on Mac OS X Snow Leopard, but lacks experience using a command line, or has only C:\ prompt knowledge. I will show you, simply, how to map a DOS command to a UNIX command, and to save your profile so the alias name you create is persistent.  If you are a shell scripting genius, this post is something you are encouraged to comment on and expand upon, as learning scripts and commands for OS X can be input many different ways.  It never hurts to have different suggestions.  I will try to make this at the minimum a weekly edition to my blog, and expand each article further than the next.

Let’s get started.  First, open Terminal from your /username/Applications/Utilities folder. This is the command line utility for UNIX, by default it is Bash (Bourne Again Shell.)

You will see your entire present working directory prior to the $ prompt.  The tilde (~) represents /Users/your home folder.  The standard format is computer name: pwd. You can type the simple command pwd and the shell will respond with the folder you are currently accessing.

Default Shell

Default Shell

I like a cleaner shell screen, so I type bash, and hit enter.  This opens a new bash shell, on top of the existing shell.  Next, the command clear deletes the current Terminal text and starts with a fresh bash prompt.  You end up with a Terminal screen that looks like this:

Clean Bash Prompt

Clean Bash Prompt

Here, we can start by showing the man (short for manual;  built in UNIX help pages) page for the command ls (list), which is basically the dir command in DOS.  Simply type man ls at the command line and hit enter.  You can move down the pages line by line using the down arrow key on your keyboard.  To exit the manual, simply type q.

The man page shows you the various options you can use along with the ls command, for example, ls -lia. This command is particularly useful when searching a directory for hidden files (they start with a period), as Finder refuses to display them by default:

Directory Listing With Hidden Files

Directory Listing With Hidden Files

Now, if you are used to DOS, here is a helpful way to stick with the commands you know, yet tell Terminal to run UNIX commands.  You create an alias, basically a command name you make up mapped to a system command. If you want to use options such as -lia, you need to enclose the command in double quotes.  The syntax of the alias command in bash is alias newCmdName=systemCmdName. The command in DOS for a directory listing like the one above is dir /a.  So we can map dirA to ls -lia like so:  alias dirA=”ls -lia”

Note that UNIX is also case-sensitive, for files as well as commands:

Alias DOS dir to UNIX ls

Alias DOS dir to UNIX ls

You can simplify entering commands by using the up arrow to cycle through previously typed in commands.  The history command, saves the commands you enter by line number, which you can view by typing history.  To execute the line number, type an exclamation point followed by the line number:

History Command

History Command

Now, to save this new alias dirA you created into your bash profile.  This way it doesn’t get erased when we kill the shell and quit Terminal.  You may not have a profile set up for bash in your home directory, so what you need to do is create one.  Bash will look for .bash_profile first, so it is best to name any profile you want to use on a regular basis with this name.  It is a hidden file, so you need to have the period in the file name.  For simplicity, you can create a simple text file in your favorite text editor, name it bash_profile (without an extension)and save it in your home directory.  Write the exact command on one line like so: alias dirA=”ls-lia”

Save the file, and then change the name in Terminal.  Use the command mv to change the name so it begins with a period.  Simply type mv bash_profile .bash_profile and press enter:

MV Command

MV Command

MV Complete

MV Complete

That did two things:  one, you moved the file;  two, you learned that mv is the same command as the DOS command move.  You can follow the procedure above to make an alias for the mv command, and place it on the next line in your .bash_profile, so it remains permanent for your login shell.  If you like running an “non-login” shell as I do above, you can use the command cp to copy your .bash_profile to .bashrc like so:   cp .bash_profile .bashrc

Here is a short list of a few DOS commands, along with their respective UNIX bash counterparts (pdf of list here):

DOS COMMAND

UNIX COMMAND

DIR

LS

MOVE

MV

COPY

CP

FIND

GREP, FGREP, EGREP

MEM

TOP (virtual memory use VM_STAT)

*use ctrl-c to end TOP command*

CD

CD (PWD to display current directory)

DEL

RM

That’s all for this quick lesson.  Stop by next week for more DOS examples in UNIX, and (hopefully) working with vi, UNIX’s text editor.

, , , , , , , , , , , ,

1 Comment