| |
Everything in Unix is a "file" -- real files, directories, device drivers,
and so forth. This makes it easy to combine files and programs in many
different and new ways.
Directories are special files that hold the names of other files or other directories.
In this way, the Unix file system looks like a hierarchical tree, similar to
DOS. Note that directories are separated by a forward slash ( / ) not a backslash
( \ ) as in DOS.
How much disk space are you allowed to use? See ACCC
Online Disk Space Policy.
|
|
| |
-
file name
-
A file name is a string of characters. Unix does not give special relevance
to periods or other characters, although some programs expect specific
types of filenames.
-
full path
-
The full path of a file specifies all directories, such as /usr/local/bin/foo.bar.
The filename foo.bar can be used for this file when /usr/local/bin
is the current directory.
-
file permissions
-
Each file has an associated owner and group. The owner is a logon account,
and the group is a possibly empty group of logon accounts. The read, write,
and execute permissions (which can be set by the owner) can be different
for the owner, group, and public (other). Permissions apply to directories
as well as files.
Enter ls -l to find the permissions on the files and subdirectories
in the current directory. This returns lines that look something like the
following:
drwx------ 2 bobg comp 512 Jun 7 09:49 mydir
-rwxr-xr-x 1 bobg comp 321 May 30 14:36 myscript
Each line describes one file. From left to right: the permissions, the
number of links, the owner, the group owner, the size in bytes, the date
and time of the last modification, and the file's name.
The first character of the permissions tells what kind of "file" it
is; d for directory, hyphen (-) for regular file. The remaining
nine characters are three triplets. The triplets give the read, write,
and execute permissions for that file or directory for that file for, respectively,
the file's owner, its group owner, and for the public (other). The r (read),
w
(write), and x (execute), indicate the presence of read, write and
execute permissions; the hyphen (-) indicates their absence. For directories:
r permission allows you to list the files in the directory, w
permission allows you to create or remove files from the directory, and
x permission allows you to cd to the directory.
Thus, in this example, both files are owned by bobg and have
the group comp as group owner. mydir is a subdirectory in
which only bobg can read, write, and execute; and myscript is a
file in which bobg can read, write, execute, and everyone else, including
those in group comp, can read and execute but not write.
The chmod command changes file permissions. For example chmod u+x file adds
execute permission to file for the owner (user); use u-x to remove execute
permission for the owner. u indicates the file's owner (user), g the owner's
group, o the public (other), or a for all three; and r is read permission, w is write permission, and x is execute permission.
|
|
| |
| df |
show disk space usage for the machine
tigger (AIX) man page;
icarus (Solaris) man
page |
| diff |
compare two files;
tigger (AIX) man
page; icarus (Solaris) man
page |
| find |
recursively search for files;
tigger (AIX) man
page; icarus (Solaris) man
page |
| grep |
search a bunch of files for a string;
tigger (AIX) man
page; icarus (Solaris) man
page |
| gzip |
gzip myfile compresses myfile . The compressed version
of myfile has the same name with an appended extension of .gz and
when possible has the same file ownerships, access, and modification times;
tigger (AIX) man
page; icarus (Solaris) man
page |
| gunzip |
gunzip myfile.ext decompresses (restores to its original
form) myfile.ext where ext can be: .gz .taz .tgz
.z -z z or .Z . gunzip decompresses files created
by: gzip , zip , compress , compress -H ,
or pack;
tigger (AIX) man
page; icarus (Solaris) man
page |
logout
exit |
end your Unix session; tigger (AIX) logout
man page
end your Unix session; icarus (Solaris) exit
man page |
| man |
look up a manual page; man ls will tell about the options to the
ls command, for example; main online documentation for Unix;
tigger (AIX) man
page; icarus (Solaris) man
page |
| more |
make the output stop after each screen; Spacebar displays next
screen, Ctrl-b displays the previous screen, q quits
tigger (AIX) man
page; icarus (Solaris) man
page |
| quota |
check your own disk space usage and quota
(on icarus, use: quota -v)
tigger (AIX) man
page; icarus (Solaris) man page
How much disk space are you allowed to use? See ACCC
Online Disk Space Policy. |
| sort |
sort the lines of a file;
tigger (AIX) man
page; icarus (Solaris) man
page |
| w |
check system load;
tigger (AIX) man
page; icarus (Solaris) man
page |
| wc |
count words, lines, and characters of a file
tigger (AIX) man page;
icarus (Solaris) man
page |
|
|
| |
- who am i
- To do the obvious; just who lists everyone who is logged on; likewise hostname tells you the name of the machine you're using.
(tigger (AIX) man
page; icarus (Solaris) man
page)
- pwd
- To display current directory
- mkdir foo
- To make a new directory called foo.
- cd
- To change to your home directory from anywhere.
- cd bin
- To change to the bin directory under the current directory.
- cd /usr/local/bin
- To change to the /usr/local/bin directory, regardless of what your
current directory is; much of the public software is stored in the subdirectories
of the usr directory
- ls -l -a -R | more
- To get a list of all files in a directory. -l to get a long listing,
with permissions; -a to include files with filenames beginning with
a period (.); and -R (note the R is uppercase) to also list
the files in all subdirectories of the current directory. And since this is
likely to be a long listing, it's "piped" into more so the display
pauses at the end of each screen.
- ls -l a*.c
- To get a long listing of all files with filenames starting with a
and ending in .c.
- more .profile
- To display your .profile file, when your current directory is your
home directory.
(See Using Unix: Customizing Korn
Shell for more information about .profile and .env files.
- more ~/.profile
- To display your .profile file when your current directory is not
your home directory.
- cp ../foobar .
- To copy the file foobar from the parent of the current directory
into the current directory.
- rm -i ??
- To remove (erase) all files in the current directory with exactly 2 characters
in the filename, verifying each erase with a y or n .
- mv foobar ../newdir/fubar
- To rename the file foobar to fubar and place it in the directory
newdir, that is a child of the parent directory of your current directory.
- chmod u+x foobar
- To make the file foobar executable by its owner.
- chmod -R a+r *
- To make all files the current directory and all files in all subdirectories
(-R) readable by everyone.
- man ls
- To get information on the command ls and its flags.
- ps -e | more
- To get a list all processes piped into more; without the -e only
the processes associated with your session are listed
- nohup cmd < foo.in >> foo.out &
- To run the command cmd, taking input from foo.in, appending
output to foo.out, and run the command in the background so that you
can log off and have the command continue to run. (Without the >>, nohup
puts output in the file nohup.out.)
- grep double *.c
- To search all the C source files for the string "double".
- ls -l | grep ^d | wc -l
- To find the number of subdirectories in the current directory.
- find ~ -name foobar -print
- To search for all files named foobar in your home directory tree.
- uncompress foo.Z
- To uncompress the compressed file foo.Z in the current directory.
(tigger (AIX) man
page; icarus (Solaris) man
page)
- tar -xf foo.tar
- To extract the contents of the file foo.tar in the current directory.
- diff foobar fubar > diffbar
- To find the differences between foobar and fubar and record
the differences in a file called diffbar.
- pine consult@uic.edu
- To send a note to consult@uic.edu; enter just: pine for a
complete mail management menu.
(tigger (AIX) man page;
icarus (Solaris) man
page)
|
|