Chapter 3

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 39

A Guide to Unix Using Linux

Fourth Edition

Chapter 3
Mastering Editors
Objectives

• Explain the basics of UNIX/Linux files, including


ASCII, binary, and executable files
• Understand the types of editors
• Create and edit files using the vi editor
• Create and edit files using the Emacs editor

A Guide to Unix Using Linux, Fourth Edition 2


Understanding UNIX/Linux Files

• Almost everything you create in UNIX/Linux is


stored in a file
• Bit: binary digit
– In one of two states: 0 or 1
• Machine language: exclusive use of 0s and 1s as a
way to communicate with computer
– Used by earliest programmers

A Guide to Unix Using Linux, Fourth Edition 3


ASCII Text Files

• Byte (binary term): string of eight bits


• A byte can be configured into fixed patterns of bits
– ASCII: American Standard Code for Information
Interchange
• 256 different characters
– Unicode
• Supports up to 65,536 characters
• Text files: contain nothing but printable characters
• Binary files: contain nonprintable characters
– Example: machine instructions

A Guide to Unix Using Linux, Fourth Edition 4


A Guide to Unix Using Linux, Fourth Edition 5
Binary Files

• Some things cannot be represented with ASCII


codes
• Binary files are used instead
– Example: graphic files include bit patterns
• Bitmap: made of rows and columns of dots

A Guide to Unix Using Linux, Fourth Edition 6


Executable Program Files

• Text files containing program code are compiled


into machine-readable language
• Scripts are files containing commands
– Typically interpreted, not compiled
• Executables: compiled and interpreted files that
can be run

A Guide to Unix Using Linux, Fourth Edition 7


Using Editors
• Editor: program for creating and modifying files
containing source code, text, data, memos, etc.
• Text editor: a simplified word-processing program
– Used to create and edit documents
• Two text editors normally included in UNIX/Linux
are screen editors
– vi
– Emacs
• Line editor: works with one line (or group of lines)
at a time

A Guide to Unix Using Linux, Fourth Edition 8


Using the vi Editor

• vi is a visual editor
• vi is also a modal editor
– Supports three modes
• Insert mode
– Accessed by typing “i”
• Command mode
– Accessed by typing Esc
• Extended (ex) command set mode
– Accessed by typing “:” in command mode

A Guide to Unix Using Linux, Fourth Edition 9


Creating a New File in the vi Editor

A Guide to Unix Using Linux, Fourth Edition 10


Inserting Text

• When you start vi, you are in command mode


• To insert text in your file, switch to insert mode
– Use i (insert) command
• To return to command mode, press Esc

A Guide to Unix Using Linux, Fourth Edition 11


Repeating a Change

• Use a period (.) to repeat the most recent change


you made
– Repeat command
– Works in command mode

A Guide to Unix Using Linux, Fourth Edition 12


Moving the Cursor

• To move cursor use arrow keys (command/insert


mode) or (in command mode) use:

A Guide to Unix Using Linux, Fourth Edition 13


Deleting Text

• Deletion commands available (command mode)

• dd is used for “cutting” text


– Use “yank” (yy) command for “copying” text

A Guide to Unix Using Linux, Fourth Edition 14


Undoing a Command

• Type u to use the undo command


• Example:
– If you delete a few lines from a file by mistake, type u
to restore the text

A Guide to Unix Using Linux, Fourth Edition 15


Searching for a Pattern

• To search forward for a pattern of characters:


– Type a forward slash (/)
– Type the pattern you are seeking
– Press Enter

• Examples: /\<top, /s..n, /pas[st], /!$


A Guide to Unix Using Linux, Fourth Edition 16
Searching and Replacing

• Screen-oriented commands execute at the


location of the cursor
• Line-oriented commands require you to specify
an exact location (an address) for the operation
– Preceded by a colon (:)
– Operate in ex mode
– Used for commands that perform more than one
action
• Example: searching and replacing
:1,$s/insure/ensure/g

A Guide to Unix Using Linux, Fourth Edition 17


Saving a File and Exiting vi

• To save file without exiting, use :w


• To save and exit, use :wq, :x, ZZ (command mode)

A Guide to Unix Using Linux, Fourth Edition 18


Adding Text from Another File

• To copy entire contents of one file into another file:


– Use vi to edit the file you would like to copy into
– Use the command :r filename
• filename is the name of the file that contains the
information you want to copy

A Guide to Unix Using Linux, Fourth Edition 19


Leaving vi Temporarily

• To launch a shell or execute other commands from


within vi, use :!
– Example:
• :!cal
• To run several command-line commands in a
different shell without closing vi session
– Use Ctrl+z to display the command line
– Type fg to go back to vi

A Guide to Unix Using Linux, Fourth Edition 20


Leaving vi Temporarily (continued)

A Guide to Unix Using Linux, Fourth Edition 21


Changing Your Display While Editing

• To turn on line numbering, use :set number


– Example: deleting lines 4 through 6
• :4,6d

A Guide to Unix Using Linux, Fourth Edition 22


Copying or Cutting and Pasting

• The command yy copies (yanks) a specified


number of lines
– To cut the lines, use dd
– Lines are placed in clipboard
• Use p to paste the clipboard contents

A Guide to Unix Using Linux, Fourth Edition 23


Printing Text Files

• To print a file, use the lpr (line print) shell command


– Example:
• :!lpr -P lp2 accounts

A Guide to Unix Using Linux, Fourth Edition 24


Canceling an Editing Session

• Canceling an editing session will discard all the


changes you have made
• Or, save changes you made since last using :w
– Saves file without exiting vi

A Guide to Unix Using Linux, Fourth Edition 25


Getting Help in vi

• Use the help command


– :help
• Other alternatives:
– man vi
• From the command line
– :!man vi
• From vi (command mode)

A Guide to Unix Using Linux, Fourth Edition 26


Using the Emacs Editor

• Emacs is a popular UNIX/Linux text editor


– Not modal
– More complex than vi
– More consistent than vi
– Sophisticated macro language
• Macro: set of commands that automates a complex
task
• Uses: read mail, edit contents of directories, etc.
– Powerful command syntax
– Extensible

A Guide to Unix Using Linux, Fourth Edition 27


Using the Emacs Editor (continued)

A Guide to Unix Using Linux, Fourth Edition 28


Using the Emacs Editor (continued)

A Guide to Unix Using Linux, Fourth Edition 29


Creating a New File in Emacs

A Guide to Unix Using Linux, Fourth Edition 30


Navigating in Emacs

• To create a new file: emacs filename


• To navigate in the file, use the cursor movement
keys or Ctrl/Alt key combinations
– Example: Alt+f
• To save your work:
– Use File menu
– Use the save icon
– Press Ctrl+x, Ctrl+s
• To exit: use menu, icon, or Ctrl+x, Ctrl+c

A Guide to Unix Using Linux, Fourth Edition 31


Deleting Information

• Del or Backspace keys delete individual characters


• Ctrl+k deletes to the end of a line
• To undo a deletion, use Ctrl+x, u
– Repeatedly undoes each deletion

A Guide to Unix Using Linux, Fourth Edition 32


Copying, Cutting, and Pasting Text

• To Copy-Paste or Cut-Paste:
– Mark the text
• Position cursor at the beginning, and Ctrl+Spacebar
• Navigate to the end of the text you want to include:
– Alt+w copies the text
– Ctrl+w cuts the text
– To paste, move to where you want to place the text
• Ctrl+y (the yank command)

A Guide to Unix Using Linux, Fourth Edition 33


Searching in Emacs

• One way to search in Emacs is to:


– Press Ctrl+s
– Entering string to find (on status line)
– Pressing Ctrl+s repeatedly to find each occurrence
• Use Ctrl+r to search backward
• Other alternatives:
– Use search forward for a string icon
– On the menu: Edit  Search  Search

A Guide to Unix Using Linux, Fourth Edition 34


Reformatting a File

• Alt+q turns on word wrap feature


– Lines automatically wrap around from one line to the
next

A Guide to Unix Using Linux, Fourth Edition 35


Getting Help in Emacs

• Emacs comes with extensive documentation and a


tutorial
– Tutorial is useful for getting up to speed quickly
• Click Help menu  Emacs Tutorial
• Or (in most versions), type Ctrl+h and then type t
– To view general Emacs documentation:
• Ctrl+h (press one or two times)
• Or, man emacs at command line

A Guide to Unix Using Linux, Fourth Edition 36


Summary
• Bytes: computer characters (a series of bits) stored
using numeric codes
• The vi editor is popular among UNIX/Linux users
– Three modes: insert (i), command (Esc), and ex (Esc :)
– With vi, you edit a copy of the file placed in memory
• File is not altered until you save it on disk
• Emacs is a popular alternative to vi
– Supports powerful command syntax and is extensible
– Insert text simply by typing
– Sophisticated macro language

A Guide to Unix Using Linux, Fourth Edition 37


Command Summary

A Guide to Unix Using Linux, Fourth Edition 38


Command Summary (continued)

A Guide to Unix Using Linux, Fourth Edition 39

You might also like