Ans: Shell is a interface between user and the kernel. Even though there can be only one kernel ; a system can have many shell running simultaneously . Whenever a user enters a command through keyboard the shell communicates with the kernel to execute it and then display the output to the user.
Ans: csh,ksh,bash,Bourne . The most commonly used and advanced shell used today is “Bash” .
Ans: Shortcuts are created using “links” on Linux. There are two types of links that can be used namely “soft link” and “hard link”
Ans: Soft links are link to the file name and can reside on different filesytem as well; however hard links are link to the inode of the file and has to be on the same filesytem as that of the file. Deleting the orginal file makes the soft link inactive (broken link) but does not affect the hard link (Hard link will still access a copy of the file)
Ans: Arguments can be passed as:
scriptName “Arg1” “Arg2”….”Argn” and can be accessed inside the script as $1 , $2 .. $n
Ans: $# shows the count of the arguments passed to the script.
Ans: $@ treats each quoted arguments as separate arguments but $* will consider the entire set of positional parameters as a single string.
Ans:
Eg:
1
2
3
4
|
if cat file1
ABCD
EFGH
|
Then O/p should be
EFGH
ABCD
1
|
sed '1! G; h;$!d' file1
|
Here G command appends to the pattern space,
h command copies pattern buffer to hold buffer
and d command deletes the current pattern space.
1
|
sed –n ‘5 , $p’ file1 |sed ‘ /MNO /s /ABC /DEF /’
|
1
2
3
|
tr –s “ (backslash )040” <file1 |tr –s “ (backslash )011” |tr “ (backslash )040 (backslash )011” “ (backslash )012” |uniq –c
where “ (backslash )040” is octal equivalent of “space”
|
”(backslash)011” is octal equivalent of “tab character” and
“(backslash)012” is octal equivalent of newline character.
Ans: tail +99 file1|head -1
1
|
sed –n ‘10p’ file1
|
Ans: In bash shell we can create “.profile” file which automatically gets invoked as soon as I login and write the following syntax into it.
1
|
export PS1 =’ $ `pwd ` : `hostname ` >’ .File1
|
Here File1 is the file containing the user defined functions and “.” invokes this file in current shell.
Ans: “s” bit is called “set user id” (SUID) bit.
“s” bit on a file causes the process to have the privileges of the owner of the file during the instance of the program.
Eg: Executing “passwd” command to change current password causes the user to writes its new password to shadow file even though it has “root” as its owner.
Ans: We can create the directory giving read and execute access to everyone in the group and setting its sticky bit “t” on as follows:
1
2
3
4
5
|
mkdir direc1
chmod g +wx direc1
chmod +t direc1
|
Ans: Command “uptime”
Ans: finger “loginName” …where loginName is the login name of the
user whose information is expected.
Ans: $$ gives the process id of the currently executing process whereas $! shows the process id of the process that recently went into background.
Ans: These are the processes which have died but whose exit status is still not picked by the parent process. These processes even if not functional still have its process id entry in the process table.
Ans: We can use utilities like “ftp” ,”scp” or “rsync” to copy file from one machine to other.
Eg: Using ftp:
ftp hostname
>put file1
>bye
Above copies file file1 from local system to destination system whose hostname is specified.
Ans: We can use tail –f filename. This will cause only the default last 10 lines to be displayed on std o/p which continuously shows the updating part of the file.
Ans: We can use telnet to do this:
telnet hostname –l user
>Enter password
>Write the command to execute
quit
Ans: We can use “comm” command as follows:
comm -12 file1 file2 … 12 will suppress the content which are
unique to 1st and 2nd file respectively.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# ! /bin /sh
a =1
b =1
echo $a
echo $b
for I in 1 2 3 4 5 6 7 8
do
c =a
b = $a
b = $ ( ( $a + $c ) )
echo $b
done
|