Wednesday, November 11, 2009

Linux/Unix Shell related questions

1. How do you find out what’s your shell? - echo $SHELL
2. What’s the command to find out today’s date? - date
3. What’s the command to find out users on the system? - who
4. How do you find out the current directory you’re in? - pwd
5. How do you remove a file? - rm
6. How do you remove a directory and its subdirectories - rm -rf
7. How do you find out your own username? - whoami
8. How do you send a mail message to somebody? - mail somebody@techinterviews.com -s ‘Your subject’ -c ‘cc@techinterviews.com‘

9. How do you count words, lines and characters in a file? - wc
10. How do you search for a string inside a given file? - grep string filename
11. How do you search for a string inside a directory? - grep string *
12. How do you search for a string in a directory with the subdirectories recursed? - grep -r string *
13. What are PIDs? - They are process IDs given to processes. A PID can vary from 0 to 65535.
14. How do you list currently running process? - ps
15. How do you stop a process? - kill pid
16. How do you find out about all running processes? - ps -ag
17. How do you stop all the processes, except the shell window? - kill 0
18. How do you fire a process in the background? - ./process-name &
19. How do you refer to the arguments passed to a shell script? - $1, $2 and so on. $0 is your script name.
20. What’s the conditional statement in shell scripting? - if {condition} then … fi
21. How do you do number comparison in shell scripts? - -eq, -ne, -lt, -le, -gt, -ge
22. How do you test for file properties in shell scripts? - -s filename tells you if the file is not empty, -f filename tells you whether the argument is a file, and not a directory, -d filename tests if the argument is a directory, and not a file, -w filename tests for writeability, -r filename tests for readability, -x filename tests for executability
23. How do you do Boolean logic operators in shell scripting? - ! tests for logical not, -a tests for logical and, and -o tests for logical or.
24. How do you find out the number of arguments passed to the shell script? - $#
25. What’s a way to do multilevel if-else’s in shell scripting? - if {condition} then {statement} elif {condition} {statement} fi
26. How do you write a for loop in shell? - for {variable name} in {list} do {statement} done
27. How do you write a while loop in shell? - while {condition} do {statement} done
28. How does a case statement look in shell scripts? - case {variable} in {possible-value-1}) {statement};; {possible-value-2}) {statement};; esac
29. How do you read keyboard input in shell scripts? - read {variable-name}
30. How do you define a function in a shell script? - function-name() { #some code here return }
31. How does getopts command work? - The parameters to your script can be passed as -n 15 -x 20. Inside the script, you can iterate through the getopts array as while getopts n:x option, and the variable $option contains the value of the entered option.

No comments:

Post a Comment