When I do
ls -l | grep ^d it lists only directories in the current directory.
What I'd like to know is what does the caret
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. It only takes a minute to sign up.Sign up to join this community
Andy's answer is correct, as seen in the man page:
The caret ^ and the dollar sign $ are meta-characters that respectively match the empty string at the beginning and end of a line.
The reason it works is the
-l flag to
ls makes it use the long-listing format. The first thing shown in each line is the human-readable permissions for the file, and the first character of that is either
d for a directory or
- for a file