Friday, August 8, 2014

Move text round and round on same line in UNIX

## Move Text ROUND and ROUND on same line in UNIX
## Script is self explaining. Use the comment box for any doubts


move_text()
{
#USAGE: move_text "TEXT TO ROTATE" "NUMBER_OF_TIMES"
 typeset -i i k m count;
 m=0;
 count=${2:-2}
 while [ "$m" -lt $count ]
 do
  i=0;
  k=1;
  while [ "$i" -lt 10 ]
  do
   j=0;
   while [ "$j" -lt "$k" ]
   do
     echo "\t\c"
     j=$((j+1))
   done
   echo "$1\c"
   sleep 1
   tput cub 100
   i=$((i+1));
   k=$((k+1))
  done

  m=$((m+1))
  tput el1
  tput el
 done
echo
}

move_text "...I can move 5 times...." 5

move_text "...I can move 2 times...."    #default parameter will be taken as 2

Thursday, May 29, 2014

Bully your colleague in UNIX shell

Hi Folks,

Most of the Production Support Engineers will be having their Databases on Unix server.

In those cases most of the time you folks will be using Unix Shells. Then here is a small Unix command to make fun of the colleague who is logged in the same Unix Shell.

write is the unix command which helps to write messages to other person terminal.

syntax:

write username [ttyname]

Examples:

Simple:

banner  server crashed | write joel pts/4

More realistic:

(
 echo "\n\n ------------------------SERVER REBOOT INITIATED-----------------------"
 echo " completed   8% .."
 sleep 2
 echo " completed  24% .."
 sleep 3
 echo " completed  32% .."
 sleep 4
 echo " completed  90% .."
 sleep 2
 echo " completed 100% .."
 echo "\n\n ------------------------SERVER REBOOT COMPLETED-------------------------"
 echo "\nPlease press enter to Exit session..."
 ) | write agtmgt pts/13

Note: Make fun when your colleague is deeply investigation. Yeah, thats real fun folks..

Thursday, March 20, 2014

C Program to Remove Comments from the C File

C Program to Remove Comments from the File

Description: This program removes comments starting with '//' i.e., single line comments..
You can edit it to remove '--' comments in SQL by just editing the condition..

#include<stdio.h>
#include<ctype.h>
#include<string.h>
 
#define MAXSIZE 1000
 
main()
{
 
 char c, line[MAXSIZE], oline[MAXSIZE];
 int  i=0, linesize=0, doubleq=0;
 
 FILE *ip ,*op;
 
 clrscr();
 
 
 ip = fopen( "input_ph.txt","r");
 op = fopen( "out_ph.txt","w+");
 
 
  while ( (fgets(line,1000,ip)) != NULL )
   {
    linesize = strlen(line);
 
    for(i=0;i<linesize;i++)
    {
     if ( line[i] == '"' )
     doubleq++;            //for validation of '//' in double quotes
 
     if ( !((line[i] == '/') && (line[i+1] == '/')) || (doubleq%2 == 1) )
     oline[i] = line[i];        //copy char by char to OLINE array
 
     else
     {
     oline[i]='\n';
     oline[i+1]='\0';
 
     doubleq = 0;
     break;     //break out from reading char by char once you find comment i.e., '//'
     }
    }
 
    fputs(oline,op);   //put the line truncated from comments to the output file.
    for(i=0;i<linesize;i++)   //null the arrays
    {
     oline[i]=NULL;
     line[i]=NULL;
    }
    i=0;
  }
 
  fclose(ip);
  fclose(op);
 
 getch();
 return 0;
}

Wednesday, February 26, 2014

Replacing text in all files in unix

##########################################################

for f_name in `ls file*`
do

 more $f_name | sed "s/$1/$2/g" > f_name_temp
 mv f_name_temp $f_name

done

##########################################################

Experiment:

IOB_ksh >more file1 file2 file3
::::::::::::::
file1
::::::::::::::
this is file1
::::::::::::::
file2
::::::::::::::
this is file2
::::::::::::::
file3
::::::::::::::
this is file3

IOB_ksh >changeallfiles.sh this Dis

IOB_ksh >more file1 file2 file3
::::::::::::::
file1
::::::::::::::
Dis is file1
::::::::::::::
file2
::::::::::::::
Dis is file2
::::::::::::::
file3
::::::::::::::
Dis is file3

Comments:
The for loop condition should be changed accordingly. This works only in current directory files.



Monday, December 31, 2012

Last post of the year 2012

Hi to all the blog viewer's.

There were few posts this year, I am not sure weather they are interesting or not but I hope u like them...:)
Posts this year were not that frequent, I can promise this 2013 will have more frequent posts with interactive and interesting stuff.....;)

2012 posts were mostly TECHNICAL, which is not good right! ;) So this year will be a pack of music, treck's, sharing and then at last technical...

So goodbye to 2012..I here by welcome 2013 ...hiphip hurray
:)