400 likes | 516 Views
Chapter 3 Mastering Editors. Guide To UNIX Using Linux Fourth Edition. 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.
E N D
Chapter 3Mastering Editors Guide To UNIX Using LinuxFourth Edition CTEC 110
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 CTEC 110
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 CTEC 110
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 CTEC 110
Look at Page 113 CTEC 110
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 CTEC 110
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 CTEC 110
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 CTEC 110
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 • Download the vi editor document on Blackboard for reference CTEC 110
Creating a New File in the vi Editor CTEC 110
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 CTEC 110
Repeating a Change • Use a period (.) to repeat the most recent change you made • Repeat command • Works in command mode CTEC 110
Moving the Cursor To move cursor use arrow keys (command/insert mode) or (in command mode) use: CTEC 110
Deleting Text • Deletion commands available (command mode) • dd is used for “cutting” text • Use “yank” (yy) command for “copying” text CTEC 110
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 CTEC 110
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], /!$ CTEC 110
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 CTEC 110
Saving a File and Exiting vi • To save file without exiting, use :w • To save and exit, use :wq, :x, ZZ (Do this in command mode) CTEC 110
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 CTEC 110
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+zto display the command line • Type fgto go back to vi CTEC 110
Leaving vi Temporarily (continued) CTEC 110
Changing Your Display While Editing • To turn on line numbering :set number • To delete lines 4 through 6 (ex mode) :4,6d CTEC 110
Copying or Cutting and Pasting • The commandyy 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 CTEC 110
Printing Text Files • To print a file, use the lpr(line print) shell command • Example: :!lpr -P lp2 accounts CTEC 110
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 CTEC 110
Getting Help in vi • Use the help command • :help • Other alternatives: • man vi • From the command line • :!man vi • From vi (command mode) CTEC 110
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 CTEC 110
Using the Emacs Editor (continued) CTEC 110
Using the Emacs Editor (continued) CTEC 110
Creating a New File in Emacs CTEC 110
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 CTEC 110
Deleting Information • Del or Backspace keys delete individual characters • Ctrl+kdeletes to the end of a line • To undo a deletion, use Ctrl+x, u • Repeatedly undoes each deletion CTEC 110
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+wcopies the text • Ctrl+wcuts the text • To paste, move to where you want to place the text • Ctrl+y(the yank command) CTEC 110
Searching in Emacs • One way to search in Emacs is to: • Press Ctrl+s • Entering string to find (on status line) • Pressing Ctrl+srepeatedly to find each occurrence • Use Ctrl+rto search backward • Other alternatives: • Use search forward for a string icon • On the menu: Edit Search Search CTEC 110
Reformatting a File • Alt+qturns on word wrap feature • Lines automatically wrap around from one line to the next CTEC 110
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+hand then type t • To view general Emacs documentation: • Ctrl+h(press one or two times) • Or, man emacs at command line CTEC 110
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 CTEC 110
Command Summary CTEC 110
Command Summary (continued) CTEC 110
Chapter 3 Unix Exercises • Work through Hands-on Projects at end of chapter 3 • Canvas: Review Questions • (Do not do questions 22,23,24 and 25) • Read chapter 4 before next class session • Quiz 3 Unix… CTEC 110