02. File and Directory types and modes -d, rwx

Displaying a file's access attributes

To display a file's access attributes, use the ls command with a -l option.

$ ls -l helloWorld.txt
-rwxr--r-- 1 JohnDoe staff Apr 01 10:45 helloWorld.txt

The -rwxr--r-- are called the file attributes. They are made up of the file type, and file modes, as you can see in the figure below.

The file type and file modes

File type

The first character represents the file type. Here are the options it can have.

Just a regular file.
A directory.
A symbolic link.
Note that the file modes for a symbolic link will always be rwxrwxrwx, which are just dummy variables.
A character device that handles data as a stream of bytes.
eg. terminal/modem.
A block special file.
eg. hard drive, cd-rom.
Named pipe.
A socket that permits network and bidirectional links.

You'll mainly be dealing with - (regular files) and d (directories).

File modes

The next nine characters represent the file modes for owner, group and all, respectively.

owner, group and all permission file modes

Let's see what values these modes can hold.

Regular file access attributes

For a regular file, we have three simple attributes.

Read (open and see contents of).
Write (edit and saving).
Execute (runnable).

Thus, if the owner, group, or all has any of these attributes listed in their file mode, that means they are permitted to perform that command.

For example, let's look at file1.txt.

$ ls -l file1.txt
-rwxr----- 1 JohnDoe staff Apr 01 20:40 file1.txt

From the file type we can tell that this is a regular file (-) The file modes tell us that the user can read, write and execute (rwx), group members can only read (r--), and the world has no access to anything (---).

Directory file access attributes

To view the directory permission attributes, specify a -d option - otherwise the shell will just list the files within that directory.

$ ls -dl dir1
drwxr-xr-x@ 6 JohnDoe JohnDoe 204 Mar 30 13:15 dir1

If the file is a directory (i.e. its first letter is d), then its file attribute meanings are a little different.

Contents can be listed.
Directories can be created, deleted and renamed.
Allows directory to be opened and entered.

For both r and w attributes to be valid, the x attribute must also be set.

Aching back from coding all day?

Acupressure Mat & Pillow

Aching back from coding all day? Try Back Problems

Relieve your stress, back, neck and sciatic pain through 1,782 acupuncture points for immediate neck pain relief. Made for lower, upper and mid chronic back pain treatment, and improves circulation, sleep, digestion and quality of life.

$$ Check price
144.87144.87Amazon 4.5 logo(1,890+ reviews)

More Back Problems resources

Take your Linux skills to the next level!

How Linux Works

Take your Linux skills to the next level! Try Linux & UNIX

In this completely revised second edition of the perennial best seller How Linux Works, author Brian Ward makes the concepts behind Linux internals accessible to anyone curious about the inner workings of the operating system. Inside, you'll find the kind of knowledge that normally comes from years of experience doing things the hard way.

$ Check price
39.9539.95Amazon 5 logo(114+ reviews)

More Linux & UNIX resources