Connect with us

Linux

Whereis command in Linux with 10+ Examples [2019]

Last Updated on

Let’s Learn whereis command in Linux with Simple Examples :

While working away on the command-line, one might need to find out the location of a command or binary file. The find command can be used for this task, but it is painfully slow and ends up taking much of your time and may also provide undesired results. The whereis command in Linux is ideal for quickly finding the location of a binary or source file in a system.

Whereis command in Linux is preferred due to its speed and accuracy in finding out the location of a command or binary files. More importantly, running the whereis command doesn’t require you to have root privileges. Let’s dive in and take a look at the whereis command usage with examples.

Whereis command usage in Linux

The basic syntax of the whereis command is:

1) Find the location of a command

To find out the location and man pages of a Linux command for instance,mkdir run the command

Sample output

whereis command in linux

2) Search for specific files/manuals

If you wish narrow down your search specifically to the binary file, use the -b option as shown in the command below.

Sample output

whereis command usage

To search for man pages only use the -m option as shown.

Sample output

3) View paths that whereis uses for searching

To take a quick peek at the directories that whereis command traverses while searching for command , files and man pages, use the -l option.

Sample output

whereis command in linux

4) Limit the search depth for whereis command

Usually, whereis command searches for commands and files in well-defined, hard-coded paths. However, you can limit the search depth using the -B option. For instance, to limit whereis to search binary files up to /bin, use the -B option as shown:

the -f option terminates the directory list whilst signaling the beginning of file names.

To limit the search directory for man pages, use the -M option as shown

Sample output

5) Check whereis version

if you wish to check the version of whereis command, use the -V option or –version flag as shown.

OR

Sample output

whereis command usage

6) Display whereis help options

To view the help page section that gives more insight on the options that can be used by whereis command, use the -h option or –help flag.

OR

Sample output

And with that, we come to the end of our tutorial. We welcome you to try out the commands and get back to us with your findings.

Continue Reading
Click to comment

Leave a Reply

Your email address will not be published. Required fields are marked *

Linux

cat command in Unix/Linux with 10+ examples [2019]

Last Updated on

Let’s Learn cat command in Unix/Linux with Practical Examples :

The cat command in Unix/Linux is one of the most commonly used Linux commands on a day-to-day basis whether by novices or experienced Linux users. cat is short for concatenating and is mainly used for creating either single or several files at an instance, or viewing the contents of a file. In this article, we dive deeper and explore the cat command in Unix/Linux with example usages.

Cat command in Linux with examples

The most basic syntax for using cat command is as shown below

Let’s now take a closer look at the options that are mostly used with the cat command.

1. To view file content using cat command

To have a peek at a file without any options, simply use the syntax

For instance, to check the contents of a file /etc/hosts/code> run the command:

Sample output

cat command in Unix/Linux

2. View Mutiple files in a single command

To view multiple files at a go with cat command, use the syntax:

For example

Sample output

cat command in Linux

3. Display line numbers using the -n option

To make your display neater, and more presentable, you may want to number the lines of your output. To achieve this, use the -n option as shown below

For instance

Sample output

cat command in Unix/Linux

4. Create a file using the cat command

To create a file using cat command use the syntax

Next, type the contents of the file and finally hit CTRL +D to save the file

cat command in Linux create a new file

5. Copy contents of one file onto another

With cat command, you can easily copy file contents of one file into another using the standard redirection operator > as shown below.

If the file being copied to does not exist, it will be created automatically.

cat command in Linux

NOTE

Extra caution should be taken while using the standard redirection operator because it overwrites the contents of an existing file.

6. Redirect several files into one file

Similarly, you can redirect content from multiple files into one file using the syntax:

Sample output

7. Appending text to a file

if you want to append text and not overwrite the existing content, use the double greater sign symbol (>>). The content of one file will be added or appended at the end of the next text file.

8. Redirect standard input using redirection operator

you can use the redirection operator less than (<) to read contents from a file. The syntax for this is:

Sample output

9. Display the ‘$’ sign at the end of every line

If you wish to display the $ at the end of every line, use the -e option as shown below:

Sample output

From the output above, you can see that there a dollar sign ($) at the end of every file.

10. Display all files of a certain type

To display the content of all files of a certain file type, for example, text files use the wildcard symbol as seen in the command below

Sample output

As you can see from the output above, the command displays all content from all the text files with a .txt file extension.

Take away

In this article, we demonstrated the usage of cat command alongside some helpful examples and tips. The cat command is usually helpful in creating and viewing text files as well as appending content at the end of a file. We do hope that this tutorial was helpful. Fee free to try out some of the commands.

Continue Reading

Linux

Grep Command In Unix/Linux with 25+ Examples [2019]

Last Updated on

Let’s Learn Grep Command in Unix/Linux with Simple Examples :

New Linux users get anxious when confronted with the prospect of searching for a particular string in a file. Some have no idea what to or where to start. Here is an article to make your work a little easier. grep command in unix/linux is your rescue!

GREP  is a powerful tool Linux System Administrators use to search for specific file patterns. If by any chance your distribution does not have it installed you can use the following command to install it:

On Debian or Ubuntu

On RHEL, CentOS

On Fedora 22 and later

GREP derives its name from a Linux text editor ed, which uses the similar search operation written as g/re/p. Grep also stands for global regular expression print.

Grep command in unix/linux Syntax

The command line syntax used for grep take different forms but here are some of the few command line structures

grep [OPTIONS] PATTERN [FILE…]

The command searches for a particular pattern that matches the expression against a text file or a stream of input. However, it is important to note the three other variants of the GREP command in unix/linux :

• egrep, which also takes the form of grep –E
• fgrep, which takes the form of grep –F
• rgrep, which takes the form of grep –r

Much as the three variations are no longer supported, it allows for applications that use them to continue running without any modifications. The best way to learn about GREP is by using grep command with examples.

1. Search and Find Files

When you are looking for a file or a program that you need to ascertain version, GREP will come to your rescue. The primary usage of the command should give the output in a specified format.

The command displays string Linux if found in the file index.html

2. Searching strings with case insensitive option

If you want to display all string literals with the same name regardless of whether they are case sensitive or not, you add the –i flag as follows

The result will give an output like LINUX, Linux, or Linux.

3. Searching for a string in different files

Grep can also search for a string in multiple files using a single command line. The files in question can have different file extensions. For instance, the command can scan through files with a .txt, .php, or an .html extension

4. Search multiple files using the wildcard

When looking for a search string in multiple files of the same format, the wildcard is used in place of the file name separated by the file extension. For example, instead of using index.html on the command line, we use an asterisk (*) and the file extension.

The extension after the asterisk can be any file format. The above command displays the word Linux found on all html files.

5. Search and filter files

The command can be used to search and output files in a given format. If for instance, you want to troubleshoot your samba configuration file, found on the following path /etc/samba/smb.conf. You can output all the lines in this file by leaving out the commented lined by running

The –v option tells the command to print out all lines in the smb.conf file that do not match the criteria, in our case (print all lines that are not commented)

6. Display the number of lines before and after the search string

Different options are available and can be used in the format –A and –B as options. The two options display the matching line and the number of lines before and after the string.

The command uses the ifconfig command to display the Ethernet cable (eth0) configurations then redirect the result to the grep using the –A option to 4 lines coming after eth0. The second command using the –B option displays 2 lines after eth0.

7. Print the number of lines around a matching string

The grep –C option works the same way as the above command, but it will print the given number of lines before and after the expression.

This command will print out four lines before and after the loopback device lo

8. Count the number of matches to a particular query

The grep’s inbuilt command option allows you to get all the matches that are specific to what you are looking for. If you want to see all the interfaces on your machine use grep in this format

This command displays all IPv4 and IPv6 network interfaces

9. Display the file line number

You can use this command to display line numbers with a matching string when using the –n option. This is useful for debugging compilation errors

This line will show which line number “word” is found in the file.txt file.

10. Recursive search

When you are looking for a specific string in the current directory alongside all its subdirectories, using the –r option allows for recursive search.

The string function in all subdirectory of the current directory will be displayed.

11. Using grep command in unix/linux to search full words only

If you are looking for a specific word that may also be part of another sentence, you can use grep to force a selection that only forms the complete word.

The search will narrow down to the string “bio” and not biochemistry, biology, or biomedicine, etc. if such expressions exist in FileName.

12. Fast Grep (grep -F or fgrep)

This is also known as ‘fast grep’ or fixed string. It’s referred to as fast grep because it boasts of a better performance compared to grep and egrep. It drops regular expressions and looks for a distinct string pattern. It comes in handy when searching for unique static content in a precise and concise manner.

Usage

OR

For instance, file1.txt contains the following lines

To search the pattern “one and only” run

This will display Lines 1 and 3 only because they contain the search string “one and only”

Output

-b flag specifies the block number

Example

Output

-c flag counts the number of lines containing instances of the string pattern

For example

Output

13. Grep -o

Back to our file1.txt, If you want only to display the search string “one and only” run

Output

A similar command that gives the same output is

14. Search a string in Zipped file formats

Sometimes you may be forced to look for strings in a zipped document. Grep uses the following derivatives to handle such cases, the zgrep, zcat, and gzipped. All the derivatives take and use the same options as grep.

The output here will be the word error on the syslog.2.gz files.

15. Matching regular expression

This powerful feature helps when searching for all patterns that start and end with a particular string. For example to look for a file with a start line “start and ends with “ends” strings with anything in between the two strings use:

The result will be any file with the first and last lines being start and ends. Other options that can be used when looking for matching expressions are as listed below:

• ? The preceding item is optional and matched at most once.
• The preceding item will be matched zero or more times.
• + The preceding item will be matched one or more times.
• {n} The preceding item is matched exactly n times.
• {n,} The preceding item is matched n or more times.
• {,m} The preceding item is matched at most m times.
• {n,m} The preceding item is matched at least n times, but not more than m times.

16. Show the position of the matching string

Grep can be used to show line position where the particular match is found using this format, assuming we already have our file.txt with some content such as ABCDEFGHIJKL

Output

The output above is not the actual line number but the byte offset which counts from 0.

17. Show file names with matching string pattern

We use the grep –l option to show the given pattern. When dealing with multiple files as input with the grep command in unix/linux. This is very useful when looking for some particular notes in your directory.

This command will list all files with “string “on it.

18. Counting the number of matches

When there is a need to count the number of lines matching the string pattern use the –c option.

When you add the option –v to the above command, it will give the number of lines that do not match a given pattern.

Show the number of lines that do not match all given patterns on the command line. For example, a file with the strings ABCDEFGHIJKL when issued with the command below:

This returns BCDFHIJKL
This command can further be modified to give case-insensitive results using the –vi option.

19. Highlight search Strings

The option to highlight search output is made possible when you use the –color option. In some cases, you may have to set the environment variables GREP_OPTIONS as indicated below

The “color” attribute can take any color codes supported by the system.
The command is used as follows:

All the results (Linux in this case) searches will be highlighted in a different color.

20. Display all lines ending with a specific pattern

The $ symbol is used by appending it to the search string on the command line as shown:

All lines in the passwd file ending with “string” will be shown.

21. Display lines starting with a specified string

The ^ symbol is appended to the string to give the desired output

The caret (^) symbol indicates the beginning of the line when used in Linux commands. The output will be all lines starting with the word “string.”

22. Filter specific files

Grep can also be used when you need to get particular files as your output. If for instance, your folder has many images in different formats and you only need a list of all the GIFs from a specified image folder, you can use the find command and channel the output through grep

The above command outputs all gif files piped to grep that will filter out specific images from FolderName and then re-directed through the –vi option to filter out file names “string.”

23. Using Grep and Pipes to Direct Output

If you want to see the devices connected to your machine, you can use grep and pipes in a different format as shown below

The dmesg command displays drive the message or info that matches the drive names given in ‘(s|h)d[a-z]’

24. Display the CPU model name

The cat command is used to create or view files. The  command below uses cat to view cpuinfo and later filter the output using grep where ‘String’ is the search term

# cat /proc/cpuinfo | grep -i ‘String’

For example, to display all attributes in /proc/cpuinfo with ‘cpu’ execute

Output

25.  To confirm if PATH is exported

If you want to confirm if PATH has successfully been exported to ~/.bashrc we use the command export that will search for lines with the string PATH as follows:

# grep export ~/.bashrc | grep ‘\<PATH’

The Common Linux Pipes used by Grep

Grep commands are in most cases used alongside shell pipes used to connect one command output to another without the need of a temporary file. The pipe syntax takes the form:

Command 1 | command 2 or command 1 | command 2 | command N…

In most cases, such redirection is simply interpreted as

“get data” | “verify data” | “process data” | “format data” > OutputData.file

The connection between one command to the next is referred to as a pipe symbolized by a vertical (|) bar. The command direction takes one direction only.

Using GREP Environment Variables

Environmental variables control the GREP behavior. Some of these variables are picked automatically upon installation of the operating system while others have to be defined to suit a particular environment.

GREP_COLOUR
Specifies the color used when the highlight command is invoked. Using GREP_COLORS too also has the same effect that also supports many options

GREP_OPTIONS                                                                                                        This option gives you an option of specifying default options for a particular session or throughout the system. The defined option will override any explicit option.

Conclusion

This article is not the end of grep command in Unix/Linux, we tried as much as possible to include the most common commands you are likely to use. The important thing is to read and understand the command usage and adapt it to serve your purposes. If you are on your command line type grep –-help for more options and usage.

Continue Reading

Linux

Find command in Unix/Linux with 30+ Examples [2019]

Last Updated on

Let’s Learn Find command in Unix/Linux with Practical Examples :

The find command in Unix/Linux is a nifty tool and comes in handy when searching files on the terminal or the command line. It helps users find files based on a wide spectrum of criteria such as file size, file ownership, date of modification, file permissions to mention just but a few. In this tutorial, you will learn how to search a file in Linux using the various parameter as mentioned earlier.

The find is installed by default on all Linux distributions, therefore there’s no need of installing it. Let’s dive in and see how you can use the command which is considered essential for beginners and advanced users alike.

The find command in Unix/Linux syntax structure is as shown below

1. How to List files in Current directory and sub-directory

To list files in the current directory inclusive of sub-directories run the command below

Sample Output

Find command in Unix/Linux

2. How to List files & subdirectories in a specific path or directory

You can also search a file or files in a specific directory using the syntax below

For example, to search for files in /etc directory run the command below

Sample Output

find files in a particular directory

3. How to List specific files in a specific path or directory

If you wish to narrow down your search for files and print out files according to their names, use the -name argument as shown

In our previous example in (2) above, to find files labeled apache2 in /etc directory, execute the command

Sample Output

find command- find specific files in directories

4. How to search files only or directories only

To search files only in a directory, use the -type f argument. For example, to search for files only in /etc directory run the command below and pipe results into less attribute

Sample Output

find command find files only

To search files only bearing certain names include the -type f argument as shown

For example, to search for ssh files only in /etc directory, execute

Sample Output

find particular file names using find command

To search directories only use the -type d argument

For example, to search for apache2 directories only located in /etc directory, execute

Sample Output

find directories only

5. How to search files with certain file permissions

The find command can also be used to search files with certain file permission using the -perm option followed by the octal value denoting the file permission. The syntax will be

For instance, to find files with file a permission value of 600 in /etc directory, run

Sample Output

find files with certain file permissions

Also, you can play around with the permissions syntax and search for files which are read-only, files which are executable and so on.
For example, to find files which are read-only in a certain directory execute

For example, to find all read-only files in the /etc directory execute the command

Sample Output

If you want to search for executable files, the command will be

Sample Output

search executable files

Feel free to add more options on the file permissions

6. How to recursively list files with a certain file extension

You can also search files with a specific file extension using the wildcard symbol (*) as shown below

For example, if you are wondering how to find a file with a .conf extension in /etc directory execute

Sample Output

find command recursively search for file extensions

7. Inverting search results

Suppose you want to search for files that do not fit a certain pattern. Let’s say you want to search for files that do not have a .conf extension in /etc directory. How do you go about it?
To accomplish that, use the -not -name or ! -name flags as shown

In this example, the command will be

Sample Output

invert find rsults using find command

OR

Sample Output

invert find results with ! -name flag

8. Searching hidden files

To search for hidden files in a directory, use the “.*” option. For example, to search for hidden files in /etc directory execute the command

Sample output

searching hidden files

9. Searching files owned by a particular user

The find command in Unix/Linux also allows you to find files owned by a certain user in the system
The syntax for achieving this is

For instance, to find files owned by a user ‘ james’ in the home directory run

Sample output

find files owned by a specific user

10. Searching files up to a certain directory depth

By default, the find command traverses down the entire directory tree structure in a recursive manner. I’m sure you must have noticed that at this point. However, you can dictate the search depth and specify the number of directories that you’d want your search to go down to. For instance, you may decide that you want your search to be restricted up to 2 or 3 directories. The option for specifying the depth of search is the -maxdepth option.

For instance, to limit the search of apache2to the 1st directories in the /etc directory run

Sample output

maxdepth search option -1

To go up to the 2nd directory run

Sample output

maxdepth search option -2

As you can clearly see, the search depth in the first result is limited to the /etc directory. However, in the second instance, the search has extended to /etc/init.d . /etc/cron.daily and /etc/logrotate directories.

11. Searching files of a given file size

Find can also be used to search files of specified file size. The syntax for this is

For instance, to find all files with 5kb file size in /etc directory, run

Sample output

search files of certain file sizes

If you want to search files in a given range e.g between 5kb and 10kb run

Sample output

search file size between file ranges

Wrapping Up

That was a summary of the find command in Unix/Linux. Find  is an essential tool that is a must know for beginners and seasoned system administrators and which makes searching files in Linux easy. Thank you for taking the time in this tutorial. Your feedback will be appreciated.

Continue Reading

Trending

Copyright © 2019 LinuxTeacher.com