I am new to Linux and Ubuntu and have tried changing to folders/directories with some difficulty.
Could someone explain why the following commands failed to change to the desired target folder/directory?
sharon@sharon:~$ cd Home
bash: cd: Home: No such file or directory
sharon@sharon:~$ cd /Home
bash: cd: /Home: No such file or directory
sharon@sharon:~$ cd Documents
sharon@sharon:~/Documents$ cd Downloads
bash: cd: Downloads: No such file or directory
sharon@sharon:~/Documents$ cd /Downloads
bash: cd: /Downloads: No such file or directory
sharon@sharon:~/Documents$
The filesystem is GNU/Linux is like a tree, except that the root is on top. :-) So you have structure like:
If you want to move inside the tree, one option is to use relative paths. If you are in
/home/sharon
, then typingcd Downloads
will work, because Downloads is an immediate child of your current directory. If you are in the subfolderDocuments
and want to change directory (cd
) toDownloads
, you have to go up (..
) and then toDownloads
. So the correct command would becd ../Downloads
.You could also enter an absolute path. So the
Downloads
folder is a subfolder ofsharon
which is a subfolder ofhome
which is … (you get the idea :-)) So you can also entercd /home/sharon/Downloads
wherever you are in the filesystem.~
always refers to the home directory of the current user (/home/sharon
in your case). If you entercd ~/Downloads
you'll land in yourDownloads
folder..
refers to the current directory, socd ./Downloads
is roughly equivalent tocd Downloads
...
means "parent directory"./
at the beginning of file path refers to the root directory.The next nice thing is tab expansion. If you enter
cd ~/Dow
Tab (last is pressing Tabulator key), the bash automatically expands it tocd ~/Downloads
.As the others said GNU/Linux is case sensitive. So it makes a difference if you enter
Home
,hOme
orhome
. Furthermore I hope that you see now that there is a difference between/home
andhome
. The first is adressed absolute while the last is relative to your current directory.The little cedilla ~ indicates you are already in your /home/sharon directory. When you ask for 'cd Home' the terminal looks for /home/sharon/Home. There is none.
Now you are asking, given the leading slash, to go to a directory above the current location; that is /home/Home. There is none.
Success!
I'm not too sure where exactly this is. If you want to change from /home/sharon/Documents to /home/sharon/Downloads, please try:
If you want to go directly to your home directory, that is /home/sharon, simply do:
Also you can go Step back with
And you can print the directory you are working in with (print working directory)
The command tells you why: There is no such directory.
Filenames are case sensetive, so it is /home, not /Home. Without a leading slash, it is assumed to be relative to the current directory, and the Downloads directory is not in ~/Documents, nor is it in /, but in your home directory, to which
~
is a shortcut, thus it is ~/Documents.I have to answer over this, because i can't comment on answers -.-
it means that the thin you are talking about is a directory not a file. Files don't have to have file endings like in Windows, so
~/thisIsAFile
would be a file in your home-directory but~/thisIsAFile/
would be a directory/ a folder.That means that the file you want to access is in your current directory.
Other usefull tips:
You can go a folder back with
And you can get the path you are in with (print working directory)