Difference between revisions of "Unix Helpers"

From Blue-IT.org Wiki

(Colored output)
(Colored output)
Line 14: Line 14:
 
   
 
   
 
  regex="${1}"
 
  regex="${1}"
color="${2}"
 
 
[ ${color} = "" ] && color=1  #defaults to green
 
 
   
 
   
  # 1 green
+
  if [ "${regex}" = "" ]
  # 3 red
+
then
  highlight_on=$(tput setaf 2) # green, use setab to do inverse instead of foreground
+
echo "USAGE $0 <PATTERN> < <FILE>"
  highlight_off=$(tput sgr0) # reset to standard color scheme
+
exit 1
 +
  fi
 +
 +
  # green, use setab to do inverse instead of foreground
 +
  highlight_on=$(tput setaf 2)
 +
 +
# reset to standard color scheme
 +
highlight_off=$(tput sgr0)
 
   
 
   
 
  while read line
 
  while read line
 
  do
 
  do
    [[ $line =~ $regex ]] && echo -n $''"$highlight_on"
+
      [[ $line =~ $regex ]] && echo -n $''"$highlight_on"
    echo "$line$highlight_off"  
+
      echo "$line$highlight_off"  
 
  done
 
  done
 +
 +
exit 0

Revision as of 10:56, 7 January 2014

grep

Colored output

Colered Output of a complete file. The regular expression "|$" matches those line that matches the pattern AND have an endline. This are ALL lines of the file!

egrep --color "pattern|$" file
grep --color -E "pattern|$" file
#!/bin/bash

regex="${1}"

if [ "${regex}" = "" ]
then 
	echo "USAGE $0 <PATTERN> < <FILE>"
	exit 1
fi

# green, use setab to do inverse instead of foreground
highlight_on=$(tput setaf 2)

# reset to standard color scheme
highlight_off=$(tput sgr0)

while read line
do
     $line =~ $regex  && echo -n $"$highlight_on"
     echo "$line$highlight_off" 
done

exit 0