630007 - Programming Skills-V (OS) [3/3]
Home >> Sem 3 >> 630007 - Programming Skills-V (OS) [3/3]
21. Write a script to check whether a given number is...
Shared By : Divya S Didwania (LCIT) Show/Hide Program  
21 Write a script to check whether a given number is palindrome or not. ****************************************************************** clear echo "ENTER NUMBER :=" read number rem=0 i=10 revnumber=0 for((;number>0;)) do         let revnumber=" revnumber * 10 "         let rem=" number % 10 "         let number=" number / 10 "         let revnumber=" revnumber + rem " done echo -e "\nREVERSE NUMBER :-\c" & echo $revnumber ~ ~ ~ ~ ~ ENTER NUMBER :=\c 435621  REVERSE NUMBER :-126534 [divya@linux ~]$  ****************************************************************** Shared By : Your Name (College - Place ) Show/Hide Program  
Share this program... Send it to gtumca@gmail.com with your Name - College name.. and share what you want ... at same mail id... Thanx in advance... Be connected... D_i_Z 22. Write a script to display all words of a file in ascending order.
Shared By : Divya S Didwania (LCIT) Show/Hide Program  
22.Write a script to display all words of a file in ascending order. ****************************************************************** echo " Enter File Name" read fname sort $fname    or   echo  -e "\n enter File name " read fn  for i in `cat $fn`            do                 echo $i >> f2.txt            done            sort f2.txt            rm f2.txt  ~ ~ [divya@linux ~]$ cat > f1 z x y w n h t r u a b c  [11]+  Stopped                 cat > f1 [divya@linux ~]$ sh 22.sh enter File name f1 a b c h n r t u w x y z Shared By : Your Name (College - Place ) Show/Hide Program  
Share this program... Send it to gtumca@gmail.com with your Name - College name.. and share what you want ... at same mail id... Thanx in advance... Be connected... D_i_Z 23. Write a script to display all lines of a file in ascending order.
Shared By : Hetal Modi (CTI- Gandhinagar) Show/Hide Program  
23. Write a script to display all lines of a file in ascending order.  echo " Enter File Name" read fname sort $fname  /* output  [mca0914@ctilinux-1 mca0914]$ sh 23.sh  Enter File Name second.txt 1 10 2 4 40 5 8  */ 24. Write a script to display the last modified file.
Shared By : Rushyang Darji (SVIT -Vasad ) Show/Hide Program  
#!/usr/bin/env bash # GTU24: Write a script to display the last modified file. # Code written By: Rushyang Darji # Visit My Online Repository: "http://github.com/rushyang/GTU-OS-Bash-Scripts" for regular updates and more scripts. # Final Build: 19.10.2010  while true;  do   # -e enables readline, which means you can use tab-completion. & -p prints whatever's written in "" before taking the path   # The ''|| exit'' makes the script exit if read returns false, which it   # will if the user hits Ctrl+C amongst other.     read -e -p "Enter Directory: " path || exit   # if path contains an existing directory, break out of this infinite loop.     [[ -d $path ]] && break     echo "Invalid Path, Try Again!" done  cd $path    # cd $path is inevitable because of * in use of ls. ls * -dpltr | grep -v '/$' | tail -n1   # Here, observe '*' after ls. You must specify a wildcard pattern for indicating all files first.    # This is because the -d option specifies that only directory names should listed.    # Moreover, -p puts an indicator at the end of "directories", which will be stripped by grep inverse.    # Once we have neglected directories, we can list(-l) "ONLY FILES" from current working directory sorted by it's modified time (-t) in reverse order (-r). The most last one will be fetched by tail.   cd $OLDPWD   # OLDPWD is the env var, which always remembers our "PREVIOUS WORKING DIRECTORY". Enter `env | grep OLDPWD` to see it.    # 'cd -' will also lead us into last working directory. But then also we don't need to print it on Terminal while executing it.  25. Write a shell script to add the statement #include ...
Shared By : Rushyang Darji (SVIT -Vasad ) Show/Hide Program  
#!/usr/bin/env bash # Code written By: Rushyang Darji # Visit My Online Repository: "http://github.com/rushyang/GTU-OS-Bash-Scripts" for regular updates and more scripts. # Final Build: 02.10.2010  while true; do      read -e -p "Enter Directory: " path || exit     [[ -d $path ]] && break     echo "Invalid path! Try Again!" done path=${path%/} myargs=`grep -l -e "printf" -e "fprintf" $path/*.c | xargs`  if [ $? -gt 1 ]; then        # grep exits with status 1 when no matches were found.      echo -n "No Matches were found. "  && exit fi temp=$(mktemp tmp.XXXXXXXXX) for i in $myargs        # Here, grep has the exit status 0.  do     echo "Do you want to add '#include ' to $i?"     read S     case $S in     Y|y|YES|Yes|yes|yeah)          sed '1i\ #include' "$i" > "$temp"        # i for insertion, 1 for 1st line. $i is the file to insert. and all output will be redirected to $temp       mv "$temp" "$i"            # renaming $temp by over writing to $i      ;;      n|N|NO|no|No|nope)         echo "Alright! Next.."         shift     ;;      *)             echo "Invalid input."     ;;     esac  done  if [ -z $myargs ]; then     echo "No Matches were found. Try another Directory" else     clear     head -n5 $path/*.c | less  fi  rm $temp  ########################   OR   ########################  #!/usr/bin/env bash # GTU25: Write a shell script to add the statement #include  at the beginning of every C source file in current directory containing printf and fprintf. # Code written By: Rushyang Darji # Visit My Online Repository: "http://github.com/rushyang/GTU-OS-Bash-Scripts" for regular updates and more scripts. # Final Build: 19.08.2010 # If you want to rename and include all ".C" files too, Refer GTU26.sh myargs=`grep -l -e "printf" -e "fprintf" *.c | xargs`  if [ $? -gt 1 ]; then        # grep has exit status 1 when no matches were found.      echo -n "No Appropriate Matches were found. " fi  for i in $myargs        # Here, grep has the exit status 0.  do     echo "Do you want to add '#include ' to $i?"     read S     case $S in     Y|y|YES|Yes|yes|yeah)          sed '1i\ #include' "$i" > $$        # i for insertion, 1 for 1st line. $i is the file to insert. and all output will be redirected to $$ (or you can say temp... Actually $$ returns terminal id. but when output is directed to it, a file is made)     mv $$ $i            # renaming $$ by over writing to $i      ;;      n|N|NO|no|No|nope)         echo "Alright!"         shift     ;;      *)     ;;     esac  done  if [ -z $myargs ]; then     echo "No Matches were found. Try another Directory" else     clear     head -n5 *.c | less  fi       26. Write a script that behaves both in interactive and...
Shared By : Rushyang Darji (SVIT -Vasad ) Show/Hide Program  
# !/usr/bin/env bash       Rushyang Darji (SVIT -Vasad ) # 26. Interactive - non-interactive shell script to prompt and delete c files within the given or predefined current directory. # # Code Developed By: Rushyang Darji # Init. Build: 06.08.2010 # Last Build: 19.10.2010  N=$# ext=c if test "$N" -eq "0"; then     while true; do    # Same inifinite loop as we used in GTU24         read -e -p "Enter Path: " path || exit         [[ -d $path ]] && break         echo "Invalid Path, Try Again!"     done      path=${path%/} # Removes last / from the end of the path. Though, it's not compulsion to do so because /foo/bar and /foo//////bar is considered exactly the same!      for i in $path/*.C     do         if [ "$i" != $path/'*.C' ]; then # If there is no match, Value of i will be ''$path/*.C''. & That's why there is no need to rename.             mv "$i" "${i/.C/}".c    # Renames every .C files to .c, so that we can use it afterwards in same loop.             clear          fi     done          for i in $path/*."$ext"     do         if [ "$i" != "$path"/'*.c' ]; then # If there is no ".C FILE" exist in that directory, it will switch to else.         clear         echo "File is $i"         head -n10 "$i" | nl    # head for displaying First 10 lines, nl for numbering them on terminal.         sleep 1            # Halt for 1 second         rm -i "$i"        # -i for interactive prompt.         # Remember, "" around $i is super necessary! Because except it, you'll get an error with filenames containing spaces.         else             echo "There are no matching \"C\" files to Prompt in this directory."             sleep 2             clear=no         fi     done      if test "$clear" != "no"; then  # If clear=no then there are no C Files to display.         clear         echo "Remaining C files in the Directory..."         ls -1 $path/*.c            # 1 result per line (-1)     fi else    # Else part contains, where user passes the name of C files, which should exist in the current working directory as the parameter.     for i in $path/*.C     do         if [ "$i" != $path/'*.C' ]; then   # if There are no matches ie if there is no C file in given dir, 'i' will be ''$path/*.C''         mv "$i" "${i/.C/}".c    # Renames every .C files to .c         clear          fi     done          for i in $*            # When filenames are passed as parameters.     do             clear         i="${i/.c/}"        # Removes an extension from file variable 'i' Only in the case of extension is also passed within the filename parameter.          i="$(pwd)/$i.c"        # Makes i the complete path of a file, including extension..     # Last two lines are necessary because user, may and may not enter filename including extension.         if [ -f "$i" ]; then    # Checks for the existence of given filename, into pwd             echo "File name is $i"             head -n10 "$i" | nl                 sleep 1             rm -i "$i"         else            # Error for non-Existent files.             echo "There is no such a file with name: \"$i\" in current working directoy"             sleep 3         fi     done     clear     echo "Remaining C files in the Directory..."     ls -1 *.c     sleep 1 fi 27. Write a script that deletes all leading and trailing spaces...
Shared By : Your Name (College - Place ) Show/Hide Program  
Share this program... Send it to gtumca@gmail.com with your Name - College name.. and share what you want ... at same mail id... Thanx in advance... Be connected... D_i_Z 

0 comments:
Post a Comment