0% found this document useful (0 votes)
3 views

224 unix

unix doc

Uploaded by

gajerahet8520
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

224 unix

unix doc

Uploaded by

gajerahet8520
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

Assignment-1

1. Display the content of current directory.

[06/09/2022 - 10:23.31]~/desktop/unix/demo/d1
[Abcd.DESKTOP-5I719O9]$ cat >> f1

2. Show calender of january 1980.

[06/09/2022 - 10:25.08]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ cal 1 1980

3. show the current working directory.

[06/09/2022 - 10:25.19]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ pwd

4. Display date and time in format shown in brackets ( Sun June 19,11:40 PM )

[06/09/2022 - 10:25.41]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ date +("%a %B %d , %I : %M%p")

5. Display the below pattern with echo command


\
\\\
\\\\\
[06/09/2022 - 10:26.06]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ echo -e " \\ \n \\ \\ \\ \n \\ \\ \\ \\ \\"

6. Execute a command to know the kernel version of operating system you are working on.

[06/09/2022 - 10:26.31]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ uname -r

1
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

7. Execute a command to know your terminal.

[06/09/2022 - 10:26.56]~/desktop/unix/demo
[Abcd.DESKTOP5I719O9]$ tty

8. Execute a command to identify all executables in current working directory.

[06/09/2022 - 10:28.21]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ ls *.exe

9. Display a sorted list of files by last access time.

[06/09/2022 - 10:28.33]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ ls -ltu

10. create five files named f1 to f5.

[06/09/2022 - 10:28.51]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ cat > f1 php

[06/09/2022 - 10:29.31]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ cat >f2 unix

[06/09/2022 - 10:29.41]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ cat >f3
Wd-2

[06/09/2022 - 10:29.48]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ cat >f4
NT

[06/09/2022 - 10:30.06]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ cat >f5
Asp.net

11. copy the content of f1 and f2 into f3.

[06/09/2022 - 10:30.30]~/desktop/unix/demo

2
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

[Abcd.DESKTOP-5I719O9]$ cat f1 f2>f3

12. display all files from current directory having first and last character as number.

[06/09/2022 - 10:32.07]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ ls [0-9]*[0-9]

13. display the list of all file names that contains only 3 latters.
[06/09/2022 - 10:32.19]~/desktop/unix/demo [Abcd.DESKTOP-
5I719O9]$ls ???

14. create a file named "-abc" in current working directory.

[ 09/09/2022 - 10:32.40]~/desktop/unix/demo
[Abcd.DESKTOP-7GLGQEA]$ cat > -abc
hii hello
Abcd

15count the number of characters of file "-abc".

[06/09/2022 - 10:33.10]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ wc -c -- -abc

16. rename file "ex1" to "as1".

[06/09/2022 - 10:34.09]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ mv ex1 as1

17. copy those files that must contains 3rd character in the file name as digit to the directory
"xtemp".

[06/09/2022 - 10:35.13]~/desktop/unix/demo
[Abcd.DESKTOP-5I719O9]$ cp ??[0-9]* ./xtemp

18. create directory named "helix", "apache".

[12/08/2022 - 12:17.57]/drives/d/tybca316/unix/d1/xtemp
[Abcd.DESKTOP-5I719O9]$ mkdir helix apache
3
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

19. copy the "helix" directory to "tmp" directory.

[06/09/2022 - 10:36.07]~/desktop/unix/demo/xtemp
[Abcd.DESKTOP-5I719O9]$ cp -R helix tmp

20. move those files having last character as digit to the"apache".

[06/09/2022 - 10:36.07]~/desktop/unix/demo/xtemp
[Abcd.DESKTOP-5I719O9]$ cp -R helix tmp

21. remove file "-abc".


[06/09/2022 - 10:37.49]~/desktop/unix/demo/xtemp
[Abcd.DESKTOP-5I719O9]$ rm -- -abc

Assignment-2

1. list the content of currrent directory having file names as number.

[28/08/2022 - 14:42.25]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ ls | grep -E '^[0-9]+$'

2. display the filename containing only alphabats as a names.

[28/08/2022 - 14:56.18]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ ls | grep -E '^[a-z A-Z]+$'

3. remove all files containing digit as the 2nd latter as their names.

[28/08/2022 - 14:59.40]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ rm ?[0-9]*

4. create the file named " asd[0-9]".

[28/08/2022 - 15:32.31]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ cat > asd[0-9]
Hi Hello Everyone
4
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

5. copy the content of file c- to c1,c2,c3.

[28/08/2022 - 15:10.18]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ cat c1 c2 c3> c-

6. display the date in the following format .e.g. "Today's date is : Sat Jul 30 15:25:31 IST 2011"
[28/08/2022 - 15:25.01]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ echo "Today's date is`date`"

7. compare 2 files named sc1, sc2 and store the common content in file result.

[29/08/2022 - 15:39.28]~/desktop/unix3
[Abcd.DESKTOP-7GLGQEA]$ comm -1 -2 sc1 sc2>result

8. find how many number of lines from sc1 and sc2 are common.

[28/08/2022 - 15:42.27]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ comm -1 -2 sc1 sc2 |wc -l 2

9. display only those files containing the more then 5 character as there names ( the file
names having last two characters as digit). [28/08/2022 - 15:49.44]~/desktop/unix3

[Abcd.DESKTOP-5I719O9]$ ls ???[0-9][0-9]

10. create the directory named "maxx" and copy all files having only capital letters.

[29/08/2022 - 14:14.09]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ cp `ls [A-Z]` max

11. create a file named emp*

[28/08/2022 - 21:41.34]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ cat > emp\*

12. make a list of employee in following order ( use vieditor ).

5
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

empid empname post 1


abcd programmer
2 xyz manager

[29/08/2022 - 13:50.45]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ cat emp
empid | empname | post 1| awer |
manager
2| sdfg | employee
3| rtyy | director
4| jbyg | programmer

13. display only the last accessed file from current directory.

[29/08/2022 - 13:58.49]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ ls -t

14. create file named emp_list having empid and date of joining.

[29/08/2022 - 14:09.27]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ cut -d"|" -f1,4 emp > emp_list

15. copy the content of file "emp*" in emp_master1,emp_master2

[29/08/2022 - 14:10.27]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ cp /emp* emp_master1

[29/08/2022 - 14:10.27]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ cp /emp* emp_master2

16. rename file emp_master2 to backup_emp

[29/08/2022 - 14:12.23]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ mv emp_master2 backup_emp

17. remove file "emp*"

6
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

[29/08/2022 - 14:13.13]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ rm /emp*

18. display the path of the directory where all your mail are stored. [29/08/2022
- 14:15.02]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ echo $MAIL

19. create the followingstructure


Export
|-- color
|-- dir1
|-- file1.lst
|-- m1
| |-- f1
| | `-- emp.lst
| `-- f2
|
`-- menu1.lst
|-- m2
| |-- d1
| `-- file123 `--
m3
|-- abc.php
|-- dir1
| `-- tmp
`-- xyz.java

$ mkdir export
$ mkdir color dir1 m1 m2 m3 dir2
$ cat > fil1.txt
Hello Everyone
$ cd m1
$ mkdir f1 f2
$ cd f1
$ cat > emp.txt Hye
Good Morning
$ cd..
$ cd..
$ cat > menu.txt

7
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

Hellloooo
$cdm2
$ cd m2
$ cat > file123 I’m
here

$ cat > file123


Hello unix

$ cd ..
$ cat > sps.php
Hello php

$ cd dir2

$ cat > tmp


Heyyyyyyyy
$ cat > xyz.java
Good Night

20. copy the content of file emp.lst to file123, make back up of file 'file123' and rename it with
file_bkp

[29/08/2022 - 15:55.45]~/desktop/unix3/m2
[Abcd.DESKTOP-5I719O9]$ cp file123 file_bkp

21. display the content of "export" directory in a way like question-19

[29/08/2022 - 15:55.57]~/desktop/unix3/m2
[Abcd.DESKTOP-7GLGQEA]$ ls -1d */ -x $ color/:

22. display last modified file.

[29/08/2022 - 16:01.11]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ ls -1t | head -n1 m2

23. make archive file of all the files having .lstextension

[29/08/2022 - 16:19.25]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ find . -name "*.lst"

24. move all .lst files to tmp directory


8
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

[29/08/2022 - 16:20.17]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ mv '*.lst'

25. provide the permissions to the file "color" in such a way that only the owner can perform
read and write operation whilegroup members and others can only execute a file.

[29/08/2022 - 16:22.43]~/desktop/unix3
[Abcd.DESKTOP-5I719O9]$ chmod 611

26. change the ownership of file "tmp" to root


$ $sudo
Pass:#chown hasti root tmp
#exit
$

Assignment-3

1. write a command to display content of top 3 largest file in aworking directory.

[29/08/2022 - 14:29.19]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ ls -s | head -n2

2. Count no. of words in lines 1 through 2 of file f1.txt.

[29/08/2022 - 14:33.17]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ sed -n '1,2p' f1 | wc -w

3. Display all filenames not beginning with “.”.

[29/08/2022 - 14:35.57]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ ls |grep ^[^.]

4. delete all special characters from file f1.

[29/08/2022 - 14:36.09]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ tr -cd '[a-zA-Z0-9\n]' <f1

9
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

5. Display i-node no of all files of current directory.

[29/08/2022 - 14:38.43]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ ls i

6. Display those lines of file f1 that contains exactly 20 characters in it.

[29/08/2022 - 14:40.20]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ grep -E'^.{20}' f2

7. Replace 'hello' with “HELLO” in input file finish and write those lines to output file fout.sh

[29/08/2022 - 14:44.51]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ cat f2

8. extract all username and their home directory form /etc/passwd file.

[29/08/2022 - 14:44.58]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ cat /etc/passwd | cut -d ':' -f 1,6

9. Locate lines of file where the second and second last character of the lines are same.
[29/08/2022 - 14:50.08]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ grep'^.\(.\).*\1.$' f2

10. Display all lines of files that contains “hello” pattern in it.

[29/08/2022 - 14:50.12]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ grep 'hello' `grep -l'hello' *` f1:hello f3:hello

11. Display all lines having “g*” patternin it.

[29/08/2022 - 14:53.09]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ grep 'g\*' f3

12. Change modification time of file to Dec 25, 10:30AM.


10
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

[29/08/2022 - 14:54.47]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ touch -t 08261957f1

13. List all files of working directory having at least 4 characters in filename.

[29/08/2022 - 14:59.57]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ find . -maxdepth 1 -type f -name '????*' -print

14. Execute a command to run a script hello.sh at tea time.

[29/08/2022 - 14:59.57]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ echo “./hello.sh” | at teatime

15. Replace multiple spaces with a single space in file f1.

[29/08/2022 - 15:23.48]~/desktop/unix/pract
[Abcd.DESKTOP-7GLGQEA]$ tr -s ' ' < f1 hii hello

16. Write a unix command to evalute an expression : 4*3.14+6

[29/08/2022 - 15:24.15]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ awk 'BEGIN {print 4*3.14+6}'18.56

17. write a command to display all unique words offile f1.

[31/08/2022 - 12:09.29]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ tr ' ' '\n' <f1 | sort | uniq -u

18. Write a command to locate lines that begin and end with (.).

[31/08/2022 - 12:09.46]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ grep '^\..*\.$' f2

11
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

19. write a command to display all lines that contains 2 or more ^symbol at beginning of line.

[31/08/2022 - 12:12.24]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ grep -E'^\^{2,}' f1

20. Write a command to replace all occurrences of “he” with “she” and “hello” with “hi” in file
f1.

[31/08/2022 - 12:17.15]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ sed 's/he/she/' -e 's/hello/hii/' f1

21. Display those lines having exactly 10 alphabates from file f1.

[31/08/2022 - 12:18.36]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ grep '^[A-Za-z]\{10\}$' f2

22. Copy file content of f1 to file f2 if f1 exist otherwise write error message to file f2.

[31/08/2022 - 12:19.48]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ cp f1 f2

23. Search those files from current directory which have more than 5 links.

[31/08/2022 - 12:23.30]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ find . -links +5 –

24. Display lines of file f1 that do not contain digitin it.

[31/08/2022 - 12:23.33]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ grep -v '[0-9]' f2

25. Replace all occurrences of “linux OS” with “unix OS” in file f1.

[31/08/2022 - 12:26.04]~/desktop/unix/pract

12
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

[Abcd.DESKTOP-5I719O9]$ sed 's/linux os/unixos/g' f3

26. Display all line of file f1 having 3rd word as'user'.

[31/08/2022 - 12:36.23]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ grep '^[^ ]* [^ ]* user'

27. Display name of all files of working directory having pattern “The”.

[31/08/2022 - 12:27.00]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ grep -l 'The' *

28. Display lines of file f1 that begin with any capital letter.
[31/08/2022 - 12:35.32]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ grep '^[A-Z]' f3

29. Write a sed command to extract first word of each line. Assuming that there is no white
space character at beginning of line. [31/08/2022 - 12:35.55]~/desktop/unix/pract

[Abcd.DESKTOP-5I719O9]$ sed 's/ .*/ /g' f3

30. What does the following command do?grep f1 f2 f3


It’s return nothing

31. display only those lines of file f1 having length in between 30 to 50 characters.

[31/08/2022 - 12:39.07]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ grep'^.\{10,20\}$' f3

32. Display binary value of 12 using bc


[31/08/2022 - 12:39.07]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ echo “obase=2; 12” | bc

13
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

33. Replace all occurrences of “hello” with “hi” and “he” with “she”.

[31/08/2022 - 12:17.15]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ sed 's/he/she/' -e's/hello/hii/' f1

34. Count number of words and lines of files whose filename begins with x.

[31/08/2022 - 12:40.29]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ find . -maxdepth 1 -type f -name 't*' -exec wc -wl {} \;

35. Write equivalent sed command of “sed '1,5d' f1”.

[31/08/2022 - 12:41.19]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ sed -n '1,5!p' f3

36. Write equivalent IRE for the following regular expression


- A* -
A?
[31/08/2022 - 12:42.35]~/desktop/unix/pract
[Abcd.DESKTOP-5I719O9]$ grep 'A\{1,\}' f3

ASSIGNMENT-1

1 Write a shell script which works like a calculator(enter the values via
command line argument)

echo -n "Enter num1: "


read num1

echo -n "Enter num2: "


read num2

echo -e "\t\tMenu\n1. Addition\n2. Multiplication\n3. Subtraction\n4. Division\nEnter your


choice: "
read ch

14
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

case $ch in
1|+ )
ans=$(expr $num1 + $num2)
;;
2|\* )
ans=$(expr $num1 \* $num2)
;;
3|- )
ans=$(expr $num1 - $num2)
;;
4|/ )
if [ $num2 -eq 0 ]; then
echo "Error: Division by zero!"
exit 1
fi
ans=$(expr $num1 / $num2)
;;
*)
echo "Invalid option"
exit 1
;;
esac
echo "Answer: $ans"

2 Write a shell script to find a file with maximum size in the current
directory, also print the no of words, characters, and lines along with the
content of file.

max_size=0
max_file=""

for file in *; do
if [ -f "$file" ] && [ "$file" != "$0" ]; then
file_size=$(stat -c%s "$file")
if [ $file_size -gt $max_size ]; then
max_size=$file_size
15
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

max_file=$file
fi
fi
done

if [ -n "$max_file" ]; then
echo "Largest file: $max_file"
echo "Size: $(du -h $max_file | awk '{print $1}')"
echo "Words: $(wc -w < $max_file)"
echo "Characters: $(wc -c < $max_file)"
echo "Lines: $(wc -l < $max_file)"
echo "Content:"
cat $max_file
else
echo "No files found!"
fi

3 Write a shell script to display message “good morning” or “good


afternoon” or “good evening”, whenever you login.

hour=$(date +%H)

16
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

if [ $hour -lt 12 ]; then


echo "Good morning!"
elif [ $hour -lt 18 ]; then
echo "Good afternoon!"
else
echo "Good evening!"
fi

4 Write a shell script to copy one file into other, display appropriate
message if Destination file already exist.

if [ $# -ne 2 ]; then
echo "Usage: $0 source destination"
exit 1
fi

source=$1
destination=$2

if [ -f "$destination" ]; then
read -p "Destination file already exists. Overwrite? (y/n) " response
if [ "$response" = "y" ]; then
cp $source $destination
echo "File copied successfully!"
else
echo "Copy operation cancelled!"
fi
else
cp $source $destination
echo "File copied successfully!"
fi

5 Write a shell script to accept a string and reverse it.

17
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

read -p "Enter a string: " input


reversed=$(echo "$input" | awk '{FS=""} {for(i=NF;i>=1;i--) printf $i}')

echo "Reversed string: $reversed"

6 Write a shell script to input a word in lower case and convert it into
upper case.

read -p "Enter a word in lowercase: " input


uppercase=$(echo $input | tr '[:lower:]' '[:upper:]')
echo "Uppercase word: $uppercase"

7 Write an awk script to print the fields 2,3,4 and 6 from test.txt file
which contains the pattern ‘unix’

test.txt
Linux unix 10 20 30 40 50
Windows 5 10 15 20 25
Unix linux 25 30 35 40 45

8 Write an awk script that displays first two-words of each line of the file
f1

9 Write an awk script which prints file contents bottom to top

18
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

10 Write an awk script which print frequency of each word in the input
file

19
TYBCA-DIV3-SEM-5 UNIX ROLL NO-246

20

You might also like