40 lines
1.4 KiB
Bash
Executable File
40 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
# Copyright © 2011 Perberos
|
|
#
|
|
# This program is free software; you can redistribute it and/or modify it
|
|
# under the terms of the GNU Lesser General Public License as published by the
|
|
# Free Software Foundation; either version 2.1 of the License, or (at your
|
|
# option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful, but
|
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
|
|
# General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU Lesser General Public License along
|
|
# with this program; if not, write to the Free Software Foundation, Inc.,
|
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
SEARCHTEXT=`matedialog --entry --title="Search text on files" --text="Text to search"`
|
|
|
|
if [ ! "${#SEARCHTEXT}" = 0 ]; then
|
|
|
|
OIFS=$IFS; IFS=$'\n' # Backup and set new IFS
|
|
|
|
for LINE in `grep -nHIirF -- "$SEARCHTEXT" ./`; do
|
|
primer_indice=`expr index "$LINE" :`
|
|
tmp=${LINE:$primer_indice}
|
|
segundo_indice=`expr index "$tmp" :`
|
|
linea_codigo=${tmp:$segundo_indice}
|
|
|
|
# lugar donde está la palabra
|
|
posicion=`expr index "$tmp" "$SEARCHTEXT"`
|
|
|
|
linea_archivo=${LINE:0:$primer_indice + $segundo_indice - 1}
|
|
|
|
echo "${linea_archivo}: ${linea_codigo}"
|
|
done
|
|
|
|
IFS=$OIFS # Restore IFS
|
|
fi
|