Unix Commands
1. $pwd - Gives the Present working directory
2. mkdir - create a directory
Eg : mkdir dir1
Lets say you want to create more than one directory instead of invoking mkdir multiple(three) times-
like.
Eg :
mkdir dir2
mkdir dir2/dir3
mkdir dir2/dir3/dir4
rmdir: Remove a directory
3. cd : Change Directory
Eg : cd dir2
4. cal : to check calendar
5. date: Displays the system date and time.
Syntax: date [+format]
Example: Display the date in dd/mm/yy format
date +%d/%m/%y
6. Creating a file in unix :
a) Using cat Command
cat > abc.txt -- Creates a file and press control d to exit.
b ) touch file2.txt -- Creates an empty file name file2.txt
touch File1_name File2_name File3_name -- Touch command can be used to create the
multiple numbers of emplty files at the same time
cat filename : Display Content of a File
cat -b filename : Display the line numbers by using the -b
7.ls : Listing Directories and Files
All data in Unix is organized into files. All files are organized into directories. These directories are
organized into a tree-like structure called the filesystem.
ls command to list out all the files or directories available in a directory.
Eg :
ls -l list with long format - show permissions
ls -a ist all files including hidden file starting with '.' (Hidden Files)
ls -R Recursive directory tree list
ls -t sort by time & date
ls -r list in reverse order
ls -ls list with long format with file size
ls -lrt
We use * to match 0 or more characters, a question mark (?) matches with a single character.
ls file* -- Displays all the files, the names of which start with file
ls *.txt -- display all the files ending with just .txt
8. whoami : Displays the user id of the currently logged-in user
9. who : Displays the list of users currently logged in
10. wc : Counting Words in a File
Eg : wc file_name
wc filename1 filename2 filename3 -- can give multiple files and get information about those files at a
time.
wc -l state.txt prints the number of lines present in a file
wc -l state.txt capital.txt With more than one file name
wc -w state.txt prints the number of words present in a file
wc -c state.txt displays count of bytes present in a file
wc -m state.txt displays count of characters from a file.
wc -L demo_file to find the length of longest line in the file
11. cp -- Copying Files
syntax: cp source_file destination_file
Eg : cp filename1 filename2 : Copy the contents of filename1 to filename2
12. mv --Renaming Files
syntax: mv old_file new_file
Eg: mv filename newfile -- will rename the existing file filename to newfile.
13. rm -- Deleting Files
Eg : rm filename -- completely remove the existing file filename.
rm filename1 filename2 filename3 -- can remove multiple files at a time4
14. chmod --- (change mode) To change the file or the directory permissions,
d rwx rwx r-x mik mik EXAM
d- represents directory or File
first set three letters - Owner
second set three letters – User or Group
Third set of three letters - others
chmod u=rwx, g=rx, o=r myfile
4 stands for "read",
2 stands for "write",
1 stands for "execute", and
0 stands for "no permission."
chmod 777 testfile
15: Sending Email : mail [-s subject] [-c cc-addr] [-b bcc-addr] to-addr
You can connect two commands together so that the output from one program becomes the input of
the next program. Two or more commands connected in this way form a pipe (|)
16 : ps -- display currently running processes.
17 : kill -- kill the current process.
18 : man: (Manual) - Interface for working with the online reference manuals. (HELP)
Syntax: man [-s section] item
Example: Show manual page for the ‘cat’ command
$ man cat
19. find: Used to search for files and directories as mentioned in the ‘expression’
Syntax: find [starting-point] [expression]
Eg :
$ find -- List all files found in the current directory and its hierarchy
$ find /usr -type c -name backup -- In ‘/usr’ folder, find character device files, of name ‘backup’
$ find ./GFG -name sample.txt --It will search for sample.txt in GFG directory.
https://www.geeksforgeeks.org/find-command-in-linux-with-examples/
20. du: (disk usage) Estimate disk usage is blocks
syntax: du [options] [file]
Example: $ du - Show number of blocks occupied by files in the current directory
du -sh * - summary of directories (-s) in human-readable format (-h : Byte, Kilobyte, Megabyte,
Gigabyte, Terabyte and Petabyte):
du -sk * -- summary of directories (-s) in kilobytes (-k)
https://www.geeksforgeeks.org/du-command-linux-examples/
21: df: (disk free) Show number of free blocks for mounted file system
Syntax: df [options] [file]
Example: $ df -l -- Show number of free blocks in local file systems
https://www.geeksforgeeks.org/df-command-in-linux-with-examples/
Unix Filter Commands :
grep: Find lines in stdin that match a pattern and print them to stdout.
sort: Sort the lines in stdin, and print the result to stdout.
uniq: Read from stdin and print unique (that are different from the adjacent line) to stdout.
cat: Read lines from stdin (and more files), and concatenate them to stdout.
more: Read lines from stdin, and provide a paginated view to stdout.
cut: Cut specified byte, character or field from each line of stdin and print to stdout.
paste: Read lines from stdin (and more files), and paste them together line-by-line to stdout.
head: Read the first few lines from stdin (and more files) and print them to stdout.
tail: Read the last few lines from stdin (and more files) and print them to stdout.
wc: Read from stdin, and print the number of newlines, words, and bytes to stdout.
tr: Translate or delete characters read from stdin and print to stdout.
22 . grep Command -- search for string in the file.
searches a file or files for lines that have a certain pattern .
g/re/p which means --Gobally search for a regular expression and print all lines containing it.
Eg :
grep "this" demo_file -- Search for the given string in a single file
grep "this" demo_* -- Checking for the given string in multiple files.
grep -i "the" demo_file -- Case insensitive search using grep -i ’ (Both upper and lower case)
grep -r "ramesh" * -- Searching in all files recursively using grep -r
(look for the string “ramesh” in all the files in the current directory and all it’s subdirectory.)
grep -l this demo_* -- Display only the file names which matches the given pattern using grep -l
grep -n "this" demo_file -- Show line number while displaying the output using grep -n
grep “[a-e]” file1 -- Match all lines that contain any of the letters ‘a’, ‘b’, ‘c’, ‘d’ or ‘e’.
grep “[^aeiou]” file1 -- Match all lines that do not contain a vowel
grep “^hello” file1 -- Match all lines that start with ‘hello’. E.g: “hello there”
grep “done$” file1 -- Match all lines that end with ‘done’. E.g: “well done”
$grep -e "Agarwal" –e "Aggarwal" –e "Agrawal" geekfile.txt
^ -- exclude “[^aeiou]” or (start)
$ -- ending
https://www.geeksforgeeks.org/grep-command-in-unixlinux/
23 : sort -- command arranges lines of text alphabetically or numerically
Assume the below initial contents of file1.txt for the following examples
01 Priya
04 Shreya
03 Tuhina
02 Tushar
$ sort file1.txt -- Default ordering
01 Priya
02 Tushar
03Tuhina
04 Shreya
$ sort -r file1.txt -- Sort in reverse ordering:
04 Shreya
03Tuhina
02 Tushar
01 Priya
$ sort -k 2 file1.txt -- Sort by the second field:
01 Priya
04 Shreya
03 Tuhina
02 Tushar
24) uniq : command line utility that reports or filters out the repeated lines in a file.
( Displays the unique lines in the file)
Eg :
uniq kt.txt
uniq -c kt.txt -- It tells the number of times a line was repeated. (count)
uniq -d kt.txt -- It only prints the repeated lines. ( -d dupliacate)
uniq -u kt.txt -- only show lines that are not repeated ( unique)
delete duplicate lines : -- Important interview question
sort file.txt | uniq -u -- remove duplicate line in a file in unix
sort file.txt | uniq -u | cat file.txt -- remove and display the contents
of the file
https://www.cyberciti.biz/faq/unix-linux-shell-removing-duplicate-lines/
25) head Command : head by default, prints the first 10 lines of each FILE to
standard output
head file1.txt -- displays first 10 lines in the file1.txt
Check more options below.
https://www.geeksforgeeks.org/head-command-linux-examples/
26) tail Command : tail by default last 10 lines of each FILE to standard
output
tail file1.txt -- displays last 10 lines in the file1.txt
https://www.geeksforgeeks.org/tail-command-linux-examples/
head -10 filename | tail -1 filename -- to display 10th line of the file
head -n filename | tail -1 -- to display nth line of the file
27) diff commad : This command is used to display the differences in the
files by comparing the files line by line. (Compare two or more files)
Eg : diff a.txt b.txt
28) tr command (translate) : tr command in UNIX is a command line utility
for translating or deleting characters.
Syntax : $ tr [OPTION] SET1 [SET2] (Translate)
Eg : $cat greekfile | tr “[a-z]” “[A-Z]” --convert lower case to upper case
$cat greekfile | tr “[A-Z]” “[a-z]” --convert upper case to lower case
https://www.geeksforgeeks.org/tr-command-in-unix-linux-with-examples/
29) cut command : which is used to extract sections from each line of input
(Cut the fileds from a file)
Syntax: cut OPTION... [FILE]...
Eg : cut -c 2,5,7 state.txt -- command prints second, fifth and seventh character from each line of
the file.
https://www.geeksforgeeks.org/cut-command-linux-examples/
30) zip command : a command-line utility that helps you create Zip archives.
Eg : zip archivename.zip filename1 filename2 filename3
31) unzip command : unzip command extracts all files from the specified ZIP archive to the current
directory.
eg: unzip archivename.zip
32) echo command : used to display line of text/string that are passed as an argument
eg : echo Hello world
https://linuxize.com/post/echo-command-in-linux-with-examples/
33) rev command : used to reverse the lines characterwise
eg : rev file1.txt -- it reverse the contenets of the file.
https://www.geeksforgeeks.org/rev-command-in-linux-with-examples/
How to reverse a string in unix?
echo "java" | rev -- it will display avaj
34 ) sed command (stream Editor) : it can perform lot’s of function on file like, searching, find and
replace, insertion or deletion.
Syntax: sed OPTIONS... [SCRIPT] [INPUTFILE...]
Eg : sed 's/unix/linux/' geekfile.txt -- replaces the word “unix” with “linux” in the file.
SED command in UNIX stands for stream editor and it can perform lots of functions on file like
searching, find and replace, insertion or deletion. Though most common use of SED command in UNIX
is for substitution or for find and replace. By using SED you can edit files even without opening them,
which is much quicker way to find and replace something in file, than first opening that file in VI Editor
and then changing it.
SED is a powerful text stream editor. Can do insertion, deletion, search and replace(substitution).
SED command in unix supports regular expression which allows it perform complex pattern matching.
Syntax:
sed OPTIONS... [SCRIPT] [INPUTFILE...]
Example: Consider the below text file as an input.
$sed 's/unix/linux/' geekfile.txt :
Replacing or substituting string : Sed command is mostly used to replace the text in a file. The below
simple sed command replaces the word “unix” with “linux” in the file.
$sed 's/unix/linux/2' geekfile.txt :
Replacing the nth occurrence of a pattern in a line : Use the /1, /2 etc flags to replace the first, second
occurrence of a pattern in a line. The below command replaces the second occurrence of the word
“unix” with “linux” in a line.
$sed 's/unix/linux/g' geekfile.txt :
Replacing all the occurrence of the pattern in a line : The substitute flag /g (global replacement)
specifies the sed command to replace all the occurrences of the string in the line.
$sed 's/unix/linux/3g' geekfile.txt :
Replacing from nth occurrence to all occurrences in a line : Use the combination of /1, /2 etc and /g to
replace all the patterns from the nth occurrence of a pattern in a line. The following sed command
replaces the third, fourth, fifth… “unix” word with “linux” word in a line.
$ echo "Welcome To The Geek Stuff" | sed 's/\(\b[A-Z]\)/\(\1\)/g' :
Parenthesize first character of each word : This sed example prints the first character of every word in
parenthesis.
$sed '3 s/unix/linux/' geekfile.txt :
Replacing string on a specific line number : You can restrict the sed command to replace the string on a
specific line number. An example is
$sed 's/unix/linux/p' geekfile.txt :
Duplicating the replaced line with /p flag : The /p print flag prints the replaced line twice on the
terminal. If a line does not have the search pattern and is not replaced, then the /p prints that line
only once.
$sed -n 's/unix/linux/p' geekfile.txt :
Printing only the replaced lines : Use the -n option along with the /p print flag to display only the
replaced lines. Here the -n option suppresses the duplicate rows generated by the /p flag and prints
the replaced lines only one time.
If you use -n alone without /p, then the sed does not print anything.
$sed '1,3 s/unix/linux/' geekfile.txt :
Replacing string on a range of lines : You can specify a range of line numbers to the sed command for
replacing a string.
Here the sed command replaces the lines with range from 1 to 3. Another example is
$sed '2,$ s/unix/linux/' geekfile.txt
Here $ indicates the last line in the file. So the sed command replaces the text from second line to last
line in the file.
Deleting lines from a particular file : SED command can also be used for deleting lines from a particular
file. SED command is used for performing deletion operation without even opening the file Examples:
1. To Delete a particular line say n in this example
Syntax:
$ sed 'nd' filename.txt
Example:
$ sed '5d' filename.txt
2. To Delete a last line
Syntax:
$ sed '$d' filename.txt
3. To Delete line from range x to y
Syntax:
$ sed 'x,yd' filename.txt
Example:
$ sed '3,6d' filename.txt
4. To Delete from nth to last line
Syntax:
$ sed 'nth,$d' filename.txt
Example:
$ sed '12,$d' filename.txt
5. To Delete pattern matching line
Syntax:
$ sed '/pattern/d' filename.txt
Example:
$ sed '/abc/d' filename.txt
https://www.geeksforgeeks.org/sed-command-in-linux-unix-with-examples/
35) awk command :
Awk is a scripting language used for manipulating data and generating reports.The awk command
programming language requires no compiling, and allows the user to use variables, numeric functions,
string functions, and logical operators.
1. AWK Operations:
(a) Scans a file line by line
(b) Splits each input line into fields
(c) Compares input line/fields to pattern
(d) Performs action(s) on matched lines
2. Useful For:
(a) Transform data files
(b) Produce formatted reports
3. Programming Constructs:
(a) Format output lines
(b) Arithmetic and string operations
(c) Conditionals and loops
eg : awk '{print}' employee.txt -- prints every line of data from the specified file.
awk '/manager/ {print}' employee.txt -- prints all the line which matches with the ‘manager’.
https://www.geeksforgeeks.org/awk-command-unixlinux-examples/
36) history command : to give the enitre history of the comamnds which we have used.
Hisotry>a.txt
37) vi editor : https://www.tutorialspoint.com/unix/unix-vi-editor.htm
https://www.guru99.com/the-vi-editor.html
important interview questions on unix and oracle
https://blogs.perficient.com/2013/07/30/informatica-removing-duplicate-source-records/
https://ramareddydcp.wordpress.com/2017/04/23/how-many-ways-we-can-eliminate-duplicate-
records-by-using-informatica-mapping-explain-with-an-example/
https://learn-develop-informatica.blogspot.com/2015/09/unix-commands.html
http://dwhlaureate.blogspot.com/2013/11/informatica-session-components-tab-pre.html
https://www.folkstalk.com/2011/11/top-unix-interview-questions-part-1.html
https://informaticareference.wordpress.com/category/oracle-interview-questions/
https://informaticareference.wordpress.com/category/oracle-interview-questions/page/12/