Welcome to unix
This presentation is the property of its rightful owner.
Sponsored Links
1 / 55

Welcome to Unix PowerPoint PPT Presentation


  • 49 Views
  • Uploaded on
  • Presentation posted in: General

Welcome to Unix. Crafted by the CSUA at Berkeley http://csua.berkeley.edu. Redistribution. The authors (nor anyone else) provides no warranty or claim of accuracy of this document. Use at your own risk.

Download Presentation

Welcome to Unix

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Welcome to unix

Welcome to Unix

Crafted by the CSUA at Berkeley

http://csua.berkeley.edu


Redistribution

Redistribution

  • The authors (nor anyone else) provides no warranty or claim of accuracy of this document. Use at your own risk.

  • You may use this document in whole or part according to the terms of the GPL. See http://www.gnu.org/copyleft/gpl.html for details.


Outline

Outline

I. getting help

II. the file system

III. the shell

IV. safe computer sex

V. email options

VI. and lesser editors

VII. input and output redirection

VIII.printing

IX. process management

X. X


What is it and where do you get it

What is it and where do you get it?

  • An operating system used on everything from servers to embedded systems.

  • To you, probably a prompt:

    ~> type stuff here


If you know only one thing know how to rtfm

If you know only one thing, know how to RTFM.

~>man command

  • gives you help on that command.


Outline1

Outline

I. getting help

II. the file system

III. the shell

IV. safe computer sex

V. email options

VI. and lesser editors

VII. input and output redirection

VIII.printing

IX. process management

X. X


Files and directories naming something gives you power over it

Files and Directories:Naming something gives you power over it.


Absolute addressing

Absolute Addressing


Addressing relative to your home dir

Addressing relative to your home dir.


Addressing relative to your current dir

Addressing relative to your current dir.


File system commands

File system commands

  • pwd - report your current directory

  • cd <to where> - change your current directory

  • ls <directory> -list contents of directory

  • cp <old file> <new file> - copy

  • mv <old file> <new file> - move (or rename)

  • rm <file> -delete a file

  • mkdir <new directory name> -make a directory

  • rmdir <directory> -remove an empty directory


Getting recursive

getting recursive

  • remove a directory and its contents:

    rm -r <directory>

  • copy a directory and its contents:

    cp -r <directory>


File permissions

File permissions.

  • There are 3 kinds of people in the world: you (user), your friends (group) and everyone else (other).

  • Each sort of person may or may not be able to read, write, or execute a file.

    >ls -l .forward

    -rw-r--r-- 1 darin csua 23 Jan 23 2002 .forward

    >ls -l .cshrc.local

    -rwxr-xr-- 1 darin csua 2988 May 19 00:48 .cshrc.local*


Executing

executing

  • “executing” a file means running it as a program.

  • “executing” a directory means setting your current directory to it using cd.


Changing file permissions

Changing File Permissions

  • make a file readable to your friends:

    chmod 770 <filename>

  • change who owns a file:

    chown <user> <filename>

  • change to which group the file belongs:

    chgrp <group> <filename>


Welcome to unix

  • use ln -s <old file> <second name>to create a symbolic link to a file.

    >ls -l .forward*

    -rw-r--r-- 1 darin csua .forward

    lrwxr-xr-x 1 darin csua .forward.link@ -> .forward

  • The first “l” tells you that it’s a symbolic link.

  • Symbolic links can be used as if it were its target.


Outline2

Outline

I. getting help

II. the file system

III. the shell

IV. safe computer sex

V. email options

VI. and lesser editors

VII. input and output redirection

VIII.printing

IX. process management

X. X


What s a shell

what’s a shell?

  • The shell is the program that

    runs when you log in. It prints

    the prompt and reads what you

    type, invokes programs, etc.

  • your window to the Unix world.

  • default shell at ghost server is “bash”


File globbing

File Globbing

  • some commands can work on many files at once:

    ~> rm file1 file2 file27

  • Use * to match any number of unknown characters

    ~> rm file*

  • Use ? to match one unknown character.

    ~> rm file?


Un aliasing

(un)aliasing

  • create shortcuts for yourself

    ~>alias ll “ls -la”

  • Use alias with no arguments to discover current aliases

    ~>alias

    rmrm -i

    llls -la

  • Type “unalias rm” to remove alias.


Path a very important shell variable

PATH: a very important shell variable

>echo $PATH

/home/d/da/darin/bin:/opt/local/bin:/opt/local/bin/pbmutils:/usr/bin:/usr/sbin:/opt/SUNWspro/bin:/usr/ccs/bin:/opt/local/X11/bin:/usr/dt/bin:/usr/openwin/bin:/opt/local/gnu/bin:/opt/local/games/bin:/usr/ucb:./

  • If a program (like ls) is in one directory found in your path, then typing it (~>ls <enter>) will execute it.

  • Otherwise you can type the full absolute address to execute a program (~>/usr/bin/ls <enter>)


Finding things in your path

finding things in your PATH.

  • Type “which <command>” to find the location of the program which would be run when you type <command>.

  • If you don’t remember if it was chgrp or chgroup, type “ch<tab>” to get a list of commands that starts with ch.

  • when all else fails, use “find” to find a file.

    ~>find <start dir> -name “*.doc”


Shell scripts

Shell scripts.

  • If you have a bunch of commands you’d like to automate, you can put them on separate lines of a file. Then type “bash <file>” to run the script.

  • cat /etc/passwd | cat -n | cut -f1,5 | head -100


Login scripts

Login scripts

  • Most people have a script that executes when they log in. It is commonly used to set up one’s PATH and aliases.

  • Ask someone to help you start your own login script.

  • “~/.profile”


Screen is your friend

screen is your friend

  • You can use the program “screen” to run several shells from one window.

  • create a new shell by pressing <ctrl-a> c

  • switch shells by pressing <ctrl-a> <number>

  • use “<ctrl-a> d” to detach a session and come back to it later.

  • screen –ls

  • screen –r

  • screen –help


Outline3

Outline

I. getting help

II. the file system

III. the shell

IV. safe computer sex

V. email options

VI. and lesser editors

VII. input and output redirection

VIII.printing

IX. process management

X. X


Your options

Your Options

  • Abstinence

    (switch majors, unplug your computer)

  • monogamy

    (use only one computer, do not use network)

  • protection

    (also known as encryption)


What not to use

What not to use.

  • telnet, ftp, rlogin

  • all your data (including your password) is transmitted plain text over the network.

  • from library machines you can use the java ssh client from a web browser.


Using ssh keys

using ssh keys

  • use “ssh-keygen” to generate a public/private set of keys. You keep the private key and append the public key to authorized_keys.

  • You can now log in using either your password or the private key file.


Using secure copy scp

using secure copy: scp

  • copy local to remote

    scp <source file> [email protected]:<path>

  • copy remote to local

    scp [email protected]:<path> <source file>


Outline4

Outline

I. getting help

II. the file system

III. the shell

IV. safe computer sex

V. email options

VI. and lesser editors

VII. input and output redirection

VIII.printing

IX. process management

X. X


The program mail

the program mail

  • “mail”: useful for sending:

    >mail [email protected]

    Subject: hello

    Cc:

    hi there

    this is a message

    .


Other console based options

other console based options

  • elm - quick and simple, easy to use, but doesn’t handle attachments very well.

  • pine - more complete. the “standard”

  • mutt - most modern/complex.


Accessing mail remotely

accessing mail remotely

  • netscape, outlook, eudora, and others can get at your mail using POP or IMAP.

  • POP takes the messages off the server to your local computer.

  • IMAP only reads headers, but leaves mail how it is on the server. Works well if you wish to use console based email.

  • ALWAYS use SSL (encryption).


Outline5

Outline

I. getting help

II. the file system

III. the shell

IV. safe computer sex

V. email options

VI. and lesser editors

VII. input and output redirection

VIII.printing

IX. process management

X. X


Welcome to unix

vi

  • is an editor available on all decent Unix systems. Developed at Berkeley.

  • Has two modes: command and insert. In insert mode you can type normally.

  • Press escape to get into command mode. In command mode each letter is a command.

    hjkl


Pico the pine composer

pico - the pine composer

  • the simplest visual editor available on most Unix systems.

  • all possible commands displayed at bottom of screen. (control-somethings)

  • no real surprises


Emacs

emacs

  • Always has one major mode running, potentially several minor modes.

  • stands for editing macros - designed by and for lisp programmers.


Outline6

Outline

I. getting help

II. the file system

III. the shell

IV. safe computer sex

V. email options

VI. and lesser editors

VII. input and output redirection

VIII.printing

IX. process management

X. X


Welcome to unix

STD*

  • All terminal programs have:

    • standard output, which is usually your screen

    • standard input, which is usually your keyboard

    • standard error, which is also the screen


Redirect output to a file with

redirect output to a file with >

  • If you type who at the prompt, you will get a list of who is logged into the system.

  • If you type who >f, a file named f will be created and the standard output of who will be placed in that file instead of to your screen.


Welcome to unix

> vers >>

  • By default, who >f will overwrite the file f.

  • Use who >>f to append to f rather than overwriting it.


Redirecting input from a file with

redirecting input from a file with <

  • The program sort will sort its standard input and then print it on standard out.

  • To sort the lines of file1 and display:

    sort < file1

  • To sort the lines of file1 and save in file2:

    sort < file1 > file2


The output of one program can be the input to another

The output of one program can be the input to another.

who | sort

  • The output of who is sorted and shown on your terminal screen.


Welcome to unix

grep

  • grep shows only those lines containing its search pattern.

  • To see all lines in a file containing ‘bob’:

    grep ‘bob’ < file1


The cat command

The cat command

  • the arguments to cat are concatenated together and displayed on stdout. To view a file:

    cat file1

  • if no arguments, cat puts on stdout whatever you type on stdin, so this does the same thing:

    cat < file1


Outline7

Outline

I. getting help

II. the file system

III. the shell

IV. safe computer sex

V. email options

VI. and lesser editors

VII. input and output redirection

VIII.printing

IX. process management

X. X


To start a process in the background use

To start a process in the background, use “&”.

  • example:

    big_program > output &

  • big_program will not have input!


Managing jobs

managing jobs

  • To suspend the currently active program, use <control-z>.

  • To return to the program you just suspended, type “fg”

  • To put the program you just suspended in the background, type “bg”


To see a list of your programs running type ps

To see a list of your programs running, type “ps”.

>ps

PID TTY TIME CMD

866 pts/1 00:00:00 tcsh

872 pts/1 00:00:00 ps


Use kill to end a process

use kill to end a process

>ps

PID TTY TIME CMD

866 pts/1 00:00:00 tcsh

874 pts/1 00:00:00 cat

875 pts/1 00:00:00 ps

>kill 874

[1] Terminated cat


Kill 9

kill -9

  • If kill <PID> doesn’t end your process, use kill -9 <PID>


Outline8

Outline

I. getting help

II. the file system

III. the shell

IV. safe computer sex

V. email options

VI. and lesser editors

VII. input and output redirection

VIII.printing

IX. process management

X. X


Welcome to unix

gcc

  • vim test.c

  • gcc –o hello test.c


Welcome to unix

  • passwd

  • quota –v <id>


  • Login