- How can I see folders from terminal?
- What is a glob?
- ls command in Linux/Unix
- ls syntax
- ls command options
- ls command examples
- ls code generator
- Linux List Directories
- Commands Used to List Directories
- 1. ls Command
- 2. Using dir Command
- 3. Using printf Command
- 4. Using find Command
- 5. Listing Directories Using Stat Command
- 6. Listing Directories Using Grep Command
- 7. Listing Directories Using Lsattr Command
- 8. Listing Directories Using Getfacl Command
- 9. Listing Directories Using for Loop
- 10. Listing Directories Using Vim Editor
- 11. Listing Directories Using Tree Command
- Recommended Articles
- List of All Folders and Sub-folders [closed]
How can I see folders from terminal?
list directories themselves, not their contents. To explain this, consider what happens if we type ls */ . ls goes one layer down, into each subdirectory, and lists all the files in each of those sequentially
*/ is known as a «glob» in UNIX. (see Wikipedia for more details). But basically, it means «any file name ending in a forward slash.» In UNIX, directories are really just files, fundamentally. But they are specially named ending in a forward slash so the operating system knows they are directories (or folders, in everyday-person-speak). And the asterisk * is technically a wildcard standing for «any string of characters.»
What is a glob?
This paragraph will not pertain specifically to your question, but if you’ve never read about this, it’ll be good to see it. Globs are different from Regular Expressions, as (partially) explained in What is the difference between Regular Expressions and Globbing? There have been whole books written on regular expressions, but tl;dr there are a bunch of different ways to encode pattern-matching expressions.
How to show hidden folders as well? ls -d .*/ shows only hidden folders. How to view BOTH hidden and non-hidden folders? I can only think of ls -d */ .*/ Anything better?
As I am a very inexperienced user I love this website. It tells you all you want to know about bash commands, in some cases it even gives you examples. Very useful.
- ls to list the files
- ls -a to include hidden files
- ls -l for a long listing format
- .
lists one directory per line.
If you want to be able to distinguish folders from files easily, use something like ls -alhF . I usually define l as an alias for that, ie. I put the line alias l=’ls -alhF’ in my .bashrc .
include hidden files ‘-a’ grep ^d get start with ‘d’ wich means directory when name starts with dot directory is hidden
to list recursively see this
find ./ -type d | less ./ . means starts find in current folder -type . indicates the type to be searched d . means directory | . redirects the command less . enables paging using the keyboard arrows and leave with q
$ ls Desktop Downloads hadoop Pictures Templates Documents examples.desktop Music Public Videos
$ ls ~ /usr /home/hadoop1: Desktop Downloads hadoop Pictures Templates Documents examples.desktop Music Public Videos /usr: bin games include lib local locale sbin share src
$ ls -l total 48 drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Desktop drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Documents drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Downloads -rw-r--r-- 1 hadoop1 hadoop1 8980 Jul 1 2017 examples.desktop drwxr-xr-x 10 hadoop1 hadoop1 4096 Jul 1 2017 hadoop drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Music drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Pictures drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Public drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Templates drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Videos
ls command in Linux/Unix
ls is a Linux shell command that lists directory contents of files and directories.
ls syntax
$ ls [options] [file|dir]
ls command options
option | description |
---|---|
ls -a | list all files including hidden file starting with ‘.’ |
ls —color | colored list [=always/never/auto] |
ls -d | list directories — with ‘ */’ |
ls -F | add one char of */=>@| to enteries |
ls -i | list file’s inode index number |
ls -l | list with long format — show permissions |
ls -la | list long format including hidden files |
ls -lh | list long format with readable file size |
ls -ls | list with long format with file size |
ls -r | list in reverse order |
ls -R | list recursively directory tree |
ls -s | list file size |
ls -S | sort by file size |
ls -t | sort by time & date |
ls -X | sort by extension name |
ls command examples
You can press the tab button to auto complete the file or folder names.
List directory Documents/Books with relative path:
List directory /home/user/Documents/Books with absolute path.
List user’s home directory (e.g: /home/user):
List with long format and show hidden files:
Recursive directory tree list:
List only text files with wildcard:
ls redirection to output file:
List files and directories with full path:
ls code generator
Select ls options and press the Generate Code button:
Linux List Directories
We know that the Linux system is made up of files and directories. At any stage, while working on the Linux command mode you may want to list all files and subdirectories in the directory. There are many ways to list the contents of the directories in our Linux system. In this article, we will discuss about what are the command and options that are used to list directories in the Linux system.
Web development, programming languages, Software testing & others
Commands Used to List Directories
There are many commands used to list files and directories in the Linux system. Let us discuss them one by one.
1. ls Command
The ls command is the basic command used to list files and directories within the Linux file system. But if you want to list only directories, ls command offers some options. Let us discuss them with examples.
How to List Directories Using Wildcards
The simplest method to list directories is using wildcards.
To list directories in the Long listing format use the -l option.
Using grep and -f option
The -F option adds a trailing forward slash. This option allows us to grep directories by ‘grep’ing lines that ends with forward slash.
using grep and -l option
While using the long listing option –l we can grep the lines that starts with d. we can print only the directory names by using the following command.
2. Using dir Command
The dir command is used to list the contents of the directory. The syntax is as follows.
The forward slash in the above output indicates the directory and others indicate files. To print the detailed information of each file and directory use the -l command-line option.
In the above output, d indicates directories.
3. Using printf Command
This command is used for formatting and printing text. It will display the given parameters in the specified format or execute the command depending on the option specified. To display the contents of current working directory run the following command.
The output will display both files and directories.
4. Using find Command
The find command helps us to look up for files for which we know only the approximate names.In simple words the find command searches for a file in the current working directory and recursively through the subdirectories that matches the given search criteria. You can search files by name, extension, group, modification date, permissions etc.
To display all files which are present in the current working directory, use the following command.
The dot (.) symbol indicates the current working directory.
cd documents/ ~/documents$ find .
How to List only Directories Using Find Command
If you want to search only the directories and skip the file names use the -type d option as shown below.
5. Listing Directories Using Stat Command
This command is used to display the information of files and filesystem. With the help of this command, we can find the properties of file such as file size, permissions, modified date, etc.
Use the following command line to list the files and directories
6. Listing Directories Using Grep Command
This command is used for searching text files using regular expressions. To list the contents of the directory using grep command run the following command.
7. Listing Directories Using Lsattr Command
To list the files and directories in the current directory use the following command.
This command displays only the contents of the directory just down one level which means it cannot display other subdirectories and its contents and also hidden files.
8. Listing Directories Using Getfacl Command
The getfacl and setfacl are two of the mostt important and useful commands every system administrator should know to set the Access Control Lists of the files and directories.
To display the files and directories in the current working directory, just run the following command.
The key features of this command is that it not only lists the contents of the directory but also other details such as
- Owner of the file or directory
- All the group names which has access to the file or directory
- Access rights to group, owner and others.
9. Listing Directories Using for Loop
This is another method to list the contents of the directory. Use the following command shown below.
10. Listing Directories Using Vim Editor
In addition to viewing and editing files, vim editor can also be used for listing files and directories. We already know that everything is considered as a file in Linux. This implies that a directory is also a file which contains some list of files and subdirectories.
To list the files and directories in the current working directory using vim editor, run the command shown below.
The dot (.) at the end of the command implies the current working directory. Inorder to list the information of a specific directory, run the following command.
For Example:
We can use the up and down keys to navigate through the screen. To list the contents of the subdirectory, place the cursor on the subdirectory and then press ENTER key.
11. Listing Directories Using Tree Command
This command is used to list the directory contents in a tree like format.
The above command will list the files and subdirectories of the current directory. To list the directory contents down one level, run the following command.
Recommended Articles
We hope that this EDUCBA information on “Linux List Directories” was beneficial to you. You can view EDUCBA’s recommended articles for more information.
502+ Hours of HD Videos
54 Courses
4 Mock Tests & Quizzes
Verifiable Certificate of Completion
Lifetime Access
4.5
57+ Hours of HD Videos
15 Courses
9 Mock Tests & Quizzes
Verifiable Certificate of Completion
Lifetime Access
4.5
List of All Folders and Sub-folders [closed]
In this Option , is there an Option to exclude one single folder. I have a ~snapshot folder in it, which I want to exclude?
Will list all directories and subdirectories under the current path. If you want to list all of the directories under a path other than the current one, change the . to that other path.
If you want to exclude certain directories, you can filter them out with a negative condition:
find . -type d ! -name "~snapshot" > list.txt
In this Option , is there an Option to exclude one single folder. I have a ~snapshot folder in it, which I want to exclude?
As well as find listed in other answers, better shells allow both recurvsive globs and filtering of glob matches, so in zsh for example.
. lists all directories while keeping all the «-l» details that you want, which you’d otherwise need to recreate using something like.
(not quite as easy as the other answers suggest)
The benefit of find is that it’s more independent of the shell — more portable, even for system() calls from within a C/C++ program etc..
In this Option , is there an Option to exclude one single folder. I have a ~snapshot folder in it, which I want to exclude?
@Sandeep50: in zsh, yes: setopt EXTENDED_GLOB , then ls -lad **/*~**/~snapshot(/) . Details: from man zshall / «x~y (Requires EXTENDED_GLOB to be set.) Match anything that matches the pattern x but does not match y. [. ]». (There’s also «^x (Requires EXTENDED_GLOB to be set.) Matches anything except the pattern x. [further explanation of slightly different syntax + example]»)