Linux Search Pattern Interview Questions And Answers
Download Search Pattern Interview Questions and Answers PDF
Sharpen your Search Pattern interview expertise with our handpicked 45 questions. Each question is designed to test and expand your Search Pattern expertise. Suitable for all experience levels, these questions will help you prepare thoroughly. Secure the free PDF to access all 45 questions and guarantee your preparation for your Search Pattern interview. This guide is crucial for enhancing your readiness and self-assurance.
45 Search Pattern Questions and Answers:
Search Pattern Job Interview Questions Table of Contents:
1 :: Indicate the right option to search for anything not a letter or number:
a) grep '^[a-zA-Z0-9]'
b) grep '[^a-zA-Z0-9]'
c) grep '[a-zA-Z0-9]'
d) None of the above in Search Pattern
b) grep '[^a-zA-Z0-9]'
Read More2 :: One of the entry of /etc/passwd file is shown below:
user1:x:1111:2222:google:/home/user1:/bin/bash
Which among the following will print userid and home dir in the following pattern "user1:/home/user1"?
a) awk `{print $1 ":" $6}` /etc/passwd
b) awk `{print $1 ":" $7}` /etc/passwd
c) awk `{print $2 ":" $6}` /etc/passwd
d) awk `{print $2 ":" $7}` /etc/passwd
a) awk `{print $1 ":" $6}` /etc/passwd
Read More3 :: How do you remove duplicate lines from the file foo using uniq?
a) sort foo | uniq -u
b) sort -u foo | uniq -d
c) sort foo | uniq -c
d) sort foo | uniq -I
a) sort foo | uniq -u
Read More4 :: What is the command that can print lines of first file matching with second file?
a) printline
b) cmp
c) com
d) comm
d) comm
Read More5 :: Which character to use to escape meaning of special characters in search operations?
a) []
b) ^
c) .
d)
d)
Read More6 :: who | cut -d " " -f1.
What is the ouput if the who command displays like this user1 tty 0 1234?
a) user1
b) user1 tty 0 1234
c) tty
d) tty 0 1234
a) user1
Read More7 :: Which one is used to select only one copy of the repeated lines?
a) uniq -u
b) uniq -d
c) uniq -c
d) uniq -I
a) uniq -u
Read More8 :: Indicate the right option to search for BOB, Bob, BOb or BoB?
a) grep -i Bob files
b) grep 'B[oO][bB]' files
c) grep '[BOB]' files
d) grep -v 'Bob' files
b) grep 'B[oO][bB]' files
Read More9 :: How can you search for blank line in a file?
a) $ grep " " file
b) $ grep "^$" file
c) $ grep [" "] file
d) $ grep [^$] file
d) $ grep [^$] file
Read More11 :: What will be printed for the command below?
$ grep -c "^echo" abc
a) The count of lines that do not contain the pattern echo in file abc
b) The count of lines which begin with the pattern echo in file abc
c) The count of lines that ends with the pattern echo in file abc
d) None of the above
b) The count of lines which begin with the pattern echo in file abc
Read More12 :: What is the output of this program?
#include<stdio.h>
#include<fcntl.h>
int main()
{
int fd, fd2, ret;
fd = open("san.c",O_RDONLY);
ret = close(fd2);
printf("%dn",ret);
}
a) 0
b) 1
c) -1
d) none of the mentioned
c) -1
Explanation:
The "close" system call closes a file descriptor but in the program "fd2″ in not a file descriptor. Hence close system call returns -1.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
-1
[root@localhost google]#
Read MoreExplanation:
The "close" system call closes a file descriptor but in the program "fd2″ in not a file descriptor. Hence close system call returns -1.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
-1
[root@localhost google]#
13 :: What is the output of this program?
#include<stdio.h>
#include<stdlib.h>
#include<fcntl.h>
int main()
{
int fd, new_fd;
char *buff;
buff = (char *)malloc(sizeof(char)*8);
fd = open("san.c",O_RDONLY);
new_fd = dup(fd);
close(fd);
read(new_fd,buff,8);
printf("%sn",buff);
}
a) this program will not print anything
b) this program will print "#include"
c) this program will give the segmentation fault
d) this program will give the syntax error
b) this program will print "#include"
Explanation:
The "dup" system creates the a copy of the file descriptor.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
#include
[root@localhost google]#
Read MoreExplanation:
The "dup" system creates the a copy of the file descriptor.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
#include
[root@localhost google]#
14 :: What is the output of this program?
#include<stdio.h>
#include<fcntl.h>
int main()
{
int fd, count;
char ch[10];
fd = open("google.txt",O_RDWR|O_CREAT);
write(fd,"linux",5);
lseek(fd,2,SEEK_END);
write(fd,"san",3);
lseek(fd,0,0);
count = read(fd,ch,10);
printf("%sn",ch);
return 0;
}
a) linux
b) linuxsan
c) linux san
d) none of the mentioned
a) linux
Explanation:
The lseek function allows the file offset to be set beyond the end of the file and if the data is latter written this point, subsequent reads of the data in the gap returns NULL.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
linux
[root@localhost google]#
Read MoreExplanation:
The lseek function allows the file offset to be set beyond the end of the file and if the data is latter written this point, subsequent reads of the data in the gap returns NULL.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
linux
[root@localhost google]#
15 :: Tell me what is the output of this program?
#include<stdio.h>
#include<fcntl.h>
int main()
{
int fd, count;
char ch;
fd = open("google.txt",O_RDWR|O_CREAT);
write(fd,"s",1);
lseek(fd,0,SEEK_SET);
write(fd,"d",1);
lseek(fd,0,0);
read(fd,&ch,1);
printf("%cn",ch);
return 0;
}
a) d
b) s
c) sd
d) none of the mentioned
d) none of the mentioned
Explanation:
Because of "lseek" system call the character "s" is overwritten by character "d" in the file "google.txt".
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
d
[root@localhost google]#
Read MoreExplanation:
Because of "lseek" system call the character "s" is overwritten by character "d" in the file "google.txt".
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
d
[root@localhost google]#
16 :: Do you know what is the output of this program?
#include<stdio.h>
#include<stdlib.h>
#include<fcntl.h>
int main()
{
int fd;
char *buff;
buff = (char *)malloc(sizeof(char)*5);
fd = open("google.txt",O_RDWR|O_CREAT);
write(fd,"Linux",5);
read(fd,buff,5);
printf("%sn",buff);
}
a) it will print nothing
b) it will print the string "Linux"
c) segmentation fault
d) none of the mentioned
a) it will print nothing
Explanation:
We have to use "lseek" system call if we want to read the file from the beginning just after writing into it.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ls
san san.c
[root@localhost google]# ./san
[root@localhost google]# ls
san san.c google.txt
[root@localhost google]# vim google.txt
[root@localhost google]#
Read MoreExplanation:
We have to use "lseek" system call if we want to read the file from the beginning just after writing into it.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ls
san san.c
[root@localhost google]# ./san
[root@localhost google]# ls
san san.c google.txt
[root@localhost google]# vim google.txt
[root@localhost google]#
17 :: Tell us what is the output of this program?
#include<stdio.h>
#include<stdlib.h>
#include<fcntl.h>
int main()
{
int fd, count;
char ch, *buff;
buff = (char *)malloc(sizeof(char)*10);
fd = open("san.c",O_RDONLY);
count = read(fd,buff,5);
printf("%dn",count);
return 0;
}
a) 5
b) 10
c) 0
d) -1
a) 5
Explanation:
The "read" system call returns the number of bytes successfully read.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
5
[root@localhost google]#
Read MoreExplanation:
The "read" system call returns the number of bytes successfully read.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
5
[root@localhost google]#
18 :: What is the output of this program?
#include<stdio.h>
#include<fcntl.h>
int main()
{
int fd, count;
fd = open("san.c",O_RDONLY);
count = write(fd,"Linux",5);
if(count != 5)
perror("write");
return 0;
}
a) it will write the string "Linux" in the beginning of source file "san.c"
b) it will write the string "Linux" in the end of the source file "san.c"
c) segmentation fault
d) none of the mentioned
d) none of the mentioned
Explanation:
This program will write nothing in the source file "san.c" because we are opening the file in read only mode.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
write: Bad file descriptor
[root@localhost google]#
Read MoreExplanation:
This program will write nothing in the source file "san.c" because we are opening the file in read only mode.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
write: Bad file descriptor
[root@localhost google]#
19 :: Do you know what is the output of this program?
#include<stdio.h>
#include<fcntl.h>
int main()
{
int fd, count;
fd = open("google.txt",O_WRONLY|O_CREAT);
count = write(fd,"Linux System Programming",5);
if(count != 5)
perror("write");
return 0;
}
a) it will create a file "google.txt" in the present working directory
b) it will write the string "Linux System Programming" in the file "google.txt"
c) both (a) and (b)
d) none of the mentioned
a) it will create a file "google.txt" in the present working directory
Explanation:
This program will write only "Linux" in the file "google.txt" because we are writing only 5 bytes with "write" system call.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ls
san san.c
[root@localhost google]# ./san
[root@localhost google]# ls
san san.c google.txt
[root@localhost google]# vim google.txt
[root@localhost google]#
Read MoreExplanation:
This program will write only "Linux" in the file "google.txt" because we are writing only 5 bytes with "write" system call.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ls
san san.c
[root@localhost google]# ./san
[root@localhost google]# ls
san san.c google.txt
[root@localhost google]# vim google.txt
[root@localhost google]#
20 :: Output of this program?
#include<stdio.h>
#include<fcntl.h>
int main()
{
pid_t fd;
char ch;
int count;
fd = open("san.c",O_RDONLY);
do{
count = read(fd,&ch,1);
printf("%c",ch);
}while(count);
return 0;
}
a) it will print nothing
b) it will print the source code of the source file "san.c"
c) segmentation fault
d) none of the mentioned
a) it will print nothing
Explanation:
none.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
#include
#include
int main()
{
int fd, count;
char ch;
fd = open("san.c",O_RDONLY);
do{
count = read(fd,&ch,1);
printf("%c",ch);
}while(count);
}
[root@localhost google]#
Read MoreExplanation:
none.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
#include
#include
int main()
{
int fd, count;
char ch;
fd = open("san.c",O_RDONLY);
do{
count = read(fd,&ch,1);
printf("%c",ch);
}while(count);
}
[root@localhost google]#
21 :: In the output of this program, the string "/* Linux */" will be added at the ____ of the source file.
#include<stdio.h>
#include<stdlib.h>
#include<fcntl.h>
int main()
{
int fd;
fd = open("san.c",O_RDWR|O_APPEND);
write(fd,"/* Linux */",11);
return 0;
}
a) end
b) beginning
c) second line
d) third line
a) end
Explanation:
The write system call writes at the end of the file because the file is opened with O_APPEND flag.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
[root@localhost google]# vim san.c
[root@localhost google]#
Read MoreExplanation:
The write system call writes at the end of the file because the file is opened with O_APPEND flag.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
[root@localhost google]# vim san.c
[root@localhost google]#
22 :: Assuming the files fileA, fileB, fileAB, fileBC and fileABC, exist in a directory, which files match with the pattern file[ABC]?
a) fileA, fileB and fileABC
b) fileABC
c) fileA and fileB
d) fileAB, fileBC and fileABC
c) fileA and fileB
Read More