...
Is there a difference between running
ls
versusls -al
?How can you find out what the
–al
options do?What does the
pwd
command do?From the command line, what happens if you press the up/down arrow keys?
...
02.11 Answers
1: Is there a difference between running ls
versus ls -al
?
Code Block |
---|
[arcc-t05@blog1 ~]$ ls Desktop Documents Downloads [arcc-t05@blog1 ~]$ ls -al total 76 drwxr-x--- 8 arcc-t05 arcc-t05 4096 Oct 3 13:57 . drwxr-xr-x 925 root root 32768 Sep 27 16:21 .. -rw------- 1 arcc-t05 arcc-t05 212 Sep 12 15:44 .bash_history -rw-r--r-- 1 arcc-t05 arcc-t05 18 Aug 10 17:00 .bash_logout -rw-r--r-- 1 arcc-t05 arcc-t05 141 Aug 10 17:00 .bash_profile -rw-r--r-- 1 arcc-t05 arcc-t05 376 Aug 10 17:00 .bashrc drwx------ 3 arcc-t05 arcc-t05 4096 Sep 12 11:36 .config drwxr-xr-x 2 arcc-t05 arcc-t05 4096 Aug 10 17:00 Desktop drwxr-xr-x 2 arcc-t05 arcc-t05 4096 Aug 10 17:00 Documents |
...
02.12 Answers
2: How can you find out what the –al
options do?
Use
man ls
orls --help
-a, --all do not ignore entries starting with .
-l use a long listing format
Options are also case sensitive:
Code Block [arcc-t05@blog1 ~]$ ls -A .bash_history .bash_profile .config Documents .emacs .kshrc .mozilla .zshrc .bash_logout .bashrc Desktop Downloads .esd_auth .lesshst .sshWhat does the pwd command do?
3: What does the pwd
command do?
Use
man pwd
orpwd --help
pwd - print name of current/working directory
4: From the command line, what happens if you press the up/down arrow keys?
Steps through the previous commands you’ve typed.
...
|
|
---|
...
|
|
---|
Headers and Sections
...
Code Examples
...
Two Column Tables are nice ways to separate content/ Background info along with a code example on the same “Slide”. Please notice the table width. This should stop scroll bars from appearing
Bullets are nice to include for distinct points
yep
they
sure
are
This is 14 lines
...
Code Block |
---|
Please use the "code snippet" in the + button when creating code examples.
Also please do not go past the width of the table.
This is to prevent scroll bars appearing This is the Max number of code lines to show an example
|
Straight Code - No context
Code Block |
---|
Limit to 16 lines in the example. This is the end |
Same Thing With Images
...
Two Column Tables are nice ways to separate content/ Background info along with an image example on the same “Slide”. Please notice the table width. This should stop scroll bars from appearing
Bullets are nice to include for distinct points
yep
they
sure
are
This is 14 lines
...
...
Alternatively No Table
...
Finally The End
...
Link to Previous sub-module or Home Module
...
03.16 mv: Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY
Code Block |
---|
$ cd
# Create an empty file.
[~]$ touch myfil.txt
[~]$ ls
Desktop Documents Downloads folder01 myfil.txt
# Rename the file ‘myfil.txt’ to ‘myfile.txt’:
[~]$ mv myfil.txt myfile.txt
[~]$ ls
Desktop Documents Downloads folder01 myfile.txt
# Move the file ‘myfile.txt’ into the directory ‘folder01’
[~]$ mv myfile.txt folder01/
[~]$ ls
Desktop Documents Downloads folder01
# We can ‘ls’ what is in a relative folder.
[~]$ ls folder01/
folder02 myfile.txt |
...
03.17 cp: Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.
Code Block |
---|
$ cd
# Use the touch command to create an empty file.
[~]$ touch myfile02.txt
[~]$ ls
Desktop Documents Downloads folder01 myfile02.txt
# Copy (duplicate) a file.
[~]$ cp myfile02.txt myfile02b.txt
[~]$ ls
Desktop Documents Downloads folder01 myfile02b.txt myfile02.txt
# Copy a file into an existing folder.
[~]$ cp myfile02b.txt folder01/
[~]$ ls folder01/
folder02 myfile02b.txt myfile.txt |
...
03.18 cp: folders
Code Block |
---|
[~]$ cp folder01
cp: missing destination file operand after 'folder01'
Try 'cp --help' for more information.
[~]$ ls folder01
folder02 myfile02b.txt myfile.txt
[~]$ cp folder01 folder03
cp: -r not specified; omitting directory 'folder01’
# “recursively” copy a folder and all its contents.
[~]$ cp –r folder01 folder03
[~]$ ls
Desktop Documents Downloads folder01 folder03 myfile02b.txt myfile02.txt
[~]$ ls folder03
folder02 myfile02b.txt myfile.txt |
...
03.19 rmdir: Remove the DIRECTORY(ies), if they are empty.
Code Block |
---|
[~]$ ls
Desktop Documents Downloads folder01 folder03 myfile02b.txt myfile02.txt
[~]$ mkdir folder04
[~]$ ls
Desktop Documents Downloads folder01 folder03 folder04 myfile02b.txt
myfile02.txt
# Can remove folder04 since it is empty.
[~]$ rmdir folder04
[~]$ ls
Desktop Documents Downloads folder01 folder03 myfile02b.txt myfile02.txt
[~]$ rmdir folder03/
rmdir: failed to remove 'folder03/': Directory not empty |
...
03.20 rm: Remove (unlink) the FILE(s).
|
|
---|
...
03.21 rm: folders and file(s)
Code Block |
---|
[~]$ cd
[~]$ rm folder01/
rm: cannot remove 'folder01/': Is a directory
[~]$ rm --help
Usage: rm [OPTION]... [FILE]...
Remove (unlink) the FILE(s).
...
-r, -R, --recursive remove directories and their contents recursively
...
[~]$ rm -r folder01/
[~]$ ls
Desktop Documents Downloads myfile02b.txt myfile02.txt
# Can remove multiple files.
[~]$ rm myfile02b.txt myfile02.txt
[~]$ ls
Desktop Documents Downloads |
...
03.22 rm: WARNING
From the command-line there is NO trash bin.
Using rm
/rmdir
is FINAL!
...
03.23 history
Code Block |
---|
[~]$ history --help
history: history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg...]
Display or manipulate the history list.
...
[~]$ history
...
219 rm -f folder01/
220 rm -r folder01/
221 ls
222 rm myfile02b.txt myfile02.txt
223 ls
224 history
# Repeat command ‘223’
[arcc-t05@blog1 ~]$ !223
ls
Desktop Documents Downloads |
...
03.24 Exercises
Questions:
How can you return to your home folder?
What command do you use if you’ve forgotten where you are in the folder hierarchy?
How can you list what is in a folder as well as any subfolders?
Go back through the command related slides are try for yourself.
...
03.25 Answers
1: How can you return to your home folder?
Use:
cd
orcd ~
2: What command do you use if you’ve forgotten where you are in the folder hierarchy?
Use:
pwd
3: How can you list what is a folder as well as any subfolders?
Code Block |
---|
[]$ man ls
-R, --recursive
list subdirectories recursively
[]$ ls -R |
...
03.26 File Ownership and Permissions
What does the output of ls –l
mean?
Code Block |
---|
[arcc-t05@blog1 ~]$ cd /project/arccanetrain/intro_to_linux
[arcc-t05@blog1 intro_to_linux]$ ls -al
total 54
drwxrwsr-x 4 salexan5 arccanetrain 4096 Oct 6 08:09 .
drwxrws--- 40 root arccanetrain 4096 Oct 6 08:09 ..
drwxrwsr-x 2 salexan5 arccanetrain 4096 Oct 5 11:19 clusters
drwxrwsr-x 6 salexan5 arccanetrain 4096 Oct 5 14:56 data
-rw-rw-r-- 1 salexan5 arccanetrain 874 Oct 5 15:30 fruits.txt
-rw-rw-r-- 1 salexan5 arccanetrain 34472 Oct 5 10:57 software.csv
-rw-rw-r-- 1 salexan5 arccanetrain 1603 Oct 6 08:08 vegatables.txt
-rw-rw-r-- 1 arcc-t05 arccanetrain 26 Oct 5 07:20 workshop_all.txt
-rw------- 1 arcc-t05 arccanetrain 23 Oct 5 07:20 workshop_me.txt |
The first character on the left indicates if it is a directory “d” or a file “-”.
Code Block |
---|
drwxrwsr-x clusters # A folder.
-rw-rw-r-- workshop_all.txt # A file. |
...
03.27 File Ownership and Permissions
Code Block |
---|
-rw-rw-r-- 1 arcc-t05 arccanetrain 26 Oct 5 07:20 workshop_all.txt |
...
User: This is the owner of the file/folder. By default, the person who created it becomes its owner.
arcc-t05
is the owner
Group: A group is a collection of users. The primary purpose of the group is to define a set of privileges for a given resource that can be shared among the users within the group.
arccanetrain
is the group.All the
arcc-txx
users have been setup to be within this group.
Other: This is any other user who has access to the file/folder. This person has neither created the file, nor do they belong to a user group.
...
03.28 Permission Denied
Code Block |
---|
[]$ cd /project/arccanetrain/
# drwxr-sr-x 2 arcc-t01 arccanetrain 4096 May 16 16:26 arcc-t01
# No one other than arcc-t01 has permission to write within this folder.
[arccanetrain]$ cd arcc-t01/
# Can arc-t05 create (write) a file within this folder?
[arcc-t01]$ touch text.txt
touch: cannot touch 'text.txt': Permission denied
[arcc-t01]$ cd ../intro_to_linux
# -rw-rw-r-- 1 arcc-t05 arccanetrain 26 Oct 5 07:20 workshop_all.txt
# Anyone within the group can read/write this file.
[intro_to_linux]$ cat workshop_all.txt
Everybody can read this.
# Only arcc-t05 can read/write this file.
# -rw------- 1 arcc-t05 arccanetrain 23 Oct 5 07:20 workshop_me.txt
[intro_to_linux]$ cat workshop_me.txt
cat: workshop_me.txt: Permission denied |
...
03.29 Exercise: Try it
Code Block |
---|
[]$ cd /project/arccanetrain/
[arccanetrain]$ cd arcc-t05
[arcc-t05]$ touch test.txt
# Do you get a “Permission denied”?
# Navigate into the intro_to_linux folder.
[arcc-t05]$ cd ../intro_to_linux
[intro_to_linux]$ cat workshop_all.txt
Everybody can read this.
[intro_to_linux]$ cat workshop_me.txt
# Do you get a “Permission denied”?
# Can you cd into the /opt folder?
# Justify your answer.
# Can you cd into the /root folder?
# Justify your answer. |
...
03.30 Answer
Code Block |
---|
# Can you cd into the /opt folder?
[arcc-t05@blog1 ~]$ cd /opt
[arcc-t05@blog1 opt]$
# Can you cd into the /root folder?
[arcc-t05@blog1 ~]$ cd /root
-bash: cd: /root: Permission denied
# Justify your answer.
[arcc-t05@blog1 ~]$ ls -l /
...
# “other” has read permissions
drwxr-xr-x. 5 root root 43 Jun 26 11:47 opt
...
# No permission set for other read permissions
dr-xr-x---. 17 root root 4096 Oct 4 12:58 root |