Links - PowerPoint PPT Presentation

About This Presentation
Title:

Links

Description:

Links Links A link is a pointer to a file. In fact, in UNIX all filenames are just links to a file. Most files only have one link. -rw-r--r-- 1 jbond cs ... – PowerPoint PPT presentation

Number of Views:27
Avg rating:3.0/5.0
Slides: 12
Provided by: Andrew1272
Category:
Tags: golden | links | number

less

Transcript and Presenter's Notes

Title: Links


1
Software Tools
  • Links

2
Links
  • A link is a pointer to a file.
  • In fact, in UNIX all filenames are just links to
    a file. Most files only have one link.
  • -rw-r--r-- 1 jbond cs 154 Feb 4
    1500 letter3
  • -rw-r--r-- 1 jbond cs 64 Feb 4
    1500 names
  • drwxr-xr-x 2 jbond cs 512 Feb 4
    1500 secret/
  • Additional links to a file allow the file to be
    shared.
  • The ln command creates new links.
  • ln names NAMES
  • ls -l
  • total 8
  • -rw-r--r-- 2 jbond cs 64 Feb 6
    1836 NAMES
  • -rw-r--r-- 1 jbond cs 154 Feb 4
    1500 letter3
  • -rw-r--r-- 2 jbond cs 64 Feb 4
    1500 names
  • drwxr-xr-x 2 jbond cs 512 Feb 4
    1500 secret/

3
Links
  • ln creates a new link, not a new file. The new
    link and the original filename are equivalent
    pointers to the file.
  • The last argument is the link destination, and
    can be
  • A pathname of a new regular file
  • ln names NAMES
  • A pathname of an existing directory (a link with
    the same basename as the original file is created
    in the directory)
  • ln names secret
  • No second argument (same as giving a second
    argument of .)
  • ln secret/letter1

4
Links
  • A link has two pieces of information
  • A name
  • An inode number
  • An inode number is an index into a system table
    that has all the information about the file
    (e.g., owner, size).
  • ln names NAMES

system table
file contents
inode 42979 user 4501 group 1501 address ...
007 Golden Eye Tomorrow Never Dies
5
Links
  • You can use ls -i to see if two links point to
    the same inode
  • ls -li
  • total 8
  • 42979 -rw-r--r-- 3 jbond cs 64 Feb 6
    1836 NAMES
  • 42976 -rw-r--r-- 1 jbond cs 34 Feb 4
    1500 letter3
  • 42979 -rw-r--r-- 3 jbond cs 64 Feb 4
    1500 names
  • 59980 drwxr-xr-x 2 jbond cs 512 Feb 4
    1710 secret/
  • So, using rm actually only removes a link. When
    the last link to a file is removed, the operating
    system actually removes the file.

6
Symbolic Links
  • A symbolic link is a pointer to a pathname, not a
    pointer to the file itself.
  • ln -s original target creates a symbolic link.
  • A symbolic link is not equivalent to a hard link.
    The symbolic link has a different inode.
  • ln -s names snames
  • ls -li
  • total 10
  • 42979 -rw-r--r-- 3 jbond cs 64 Feb 6 1836
    NAMES
  • 42976 -rw-r--r-- 1 jbond cs 34 Feb 4 1500
    letter3
  • 42979 -rw-r--r-- 3 jbond cs 64 Feb 4 1500
    names
  • 59980 drwxr-xr-x 2 jbond cs 512 Feb 4 1710
    secret/
  • 42916 lrwxrwxrwx 1 jbond cs 5 Feb 8 1709
    snames -gt names
  • Symbolic links are sometimes called soft links,
    and regular links are sometimes called hard
    links.

7
Differences Between Hard and Soft Links
  • You cant make a hard link to a directory, but
    you can make a symbolic link to a directory.
  • ln secret secrethlink
  • ln secret hardlink not allowed for directory
  • ln -s secret secretslink
  • ls -li
  • total 12
  • 42979 -rw-r--r-- 3 jbond cs 64 Feb 6 1836
    NAMES
  • 42976 -rw-r--r-- 1 jbond cs 34 Feb 4 1500
    letter3
  • 42979 -rw-r--r-- 3 jbond cs 64 Feb 4 1500
    names
  • 59980 drwxr-xr-x 2 jbond cs 512 Feb 4 1710
    secret/
  • 42917 lrwxrwxrwx 1 jbond cs 6 Feb 8 1721
    secretslink -gt secret/
  • 42916 lrwxrwxrwx 1 jbond cs 5 Feb 8 1709
    snames -gt names
  • cd secretslink
  • pwd
  • /homes/jbond/secret

8
Differences Between Hard and Soft Links
  • You can also make symbolic links across file
    systems.
  • pwd
  • /homes/jbond/secret
  • ls -l /tmp
  • total 26
  • -rw-rw-r-- 1 root sys 13636 Feb 2 0141
    ps_data
  • ln /tmp/ps_data ps_data
  • ln ps_data is on a different file system
  • ln -s /tmp/ps_data ps_data
  • ls -li
  • total 4
  • 59944 -rw-r--r-- 1 jbond cs 154 Feb 4 1638
    letter1
  • 59597 lrwxrwxrwx 1 jbond cs 12 Feb 8 1739
    ps_data -gt /tmp/ps_data
  • There is no way to tell how many symbolic links
    there are to a file.

9
Biggest Difference Between Hard and Soft Links
  • The most important difference between hard and
    symbolic links occur when a link is removed.
  • For a hard link
  • echo 123 gt first
  • ln first second
  • rm first
  • cat second
  • 123
  • echo 456 gt first
  • cat first
  • 456
  • cat second
  • 123

10
Biggest Difference Between Hard and Soft Links
  • For a symbolic link
  • echo 123 gt first
  • ln -s first second
  • rm first
  • cat second
  • cat cannot open second
  • echo 456 gt first
  • cat first
  • 456
  • cat second
  • 456

11
Appending and Pattern Matching
  • We have seen input redirection (cat ltfile) and
    output redirection (cat gtfile). We can also
    append to a file using gtgt
  • date gt file
  • who gtgt file
  • Simple file pattern matching
  • The pattern matches any number of characters
  • ls -l letter
  • lists all files in the working directory that
    start with letter
  • The ? pattern matches any single character
  • ls -l letter?
  • lists all files in the working directory that
    start with letter followed by exactly one
    character.
Write a Comment
User Comments (0)
About PowerShow.com