Salut,
j'essaie d'écrire un script CGI pour la commande locate afin que tout le monde puisse facilement chercher un fichier par l'intermediaire d'une interface Web.
Pour l'instant j'ai ecris ca
#!/bin/sh
echo "Content-type: text/html"
echo -e "\\n"
echo \<HTML\>\<HEAD\>\<TITLE\>Recherche de $1\<\/TITLE\>
echo \<\/HEAD\>\<BODY\>
echo \<h1\>R\é\;sultat de la recherche de $1\<\/h1\>
for i in `locate $1`
do
echo \<a href=\"file:$i\"\>$i\<\/a\>
#echo \<a href=\"$i\"\>$i\<\/a\>
echo \<br\>
done
date
echo -e "\\n"
echo \<\/BODY\>
echo \<\/HTML\>
Ca marche pas mal, mais quand les fichiers et/ou repertoire contiennent des espaces, ca marche pas aussi bien, chaque espace entraine un changement de lignes.
Quelqu'un aurait-il une idee pour resoudre ce probleme.
D'avance merci.
# utiliser read
Posté par netsurfeur . Évalué à 6.
for i in `locate $1`
par
locate $1 | while read i
le 'read' va affecter une ligne complète à 'i' même si elle contient des espaces.
[^] # Re: utiliser read
Posté par 桃白白 . Évalué à 1.
T'es genial.
# Ouai
Posté par transpi . Évalué à 1.
[jul@darkstar:~] $ .locate_web
Content-type: text/html
Recherche de
Résultat de la recherche de
Secure Locate 2.7 - Released January 24, 2003
Copyright (c) 1999, 2000, 2001 Kevin Lindsay & Netnation Communications Inc. &
James A. Woods <jwoods@adobe.com>
search usage: locate [-qi] [-d ] [--database=] <search string>...
locate [-r ] [--regexp=]
database usage: locate [-qv] [-o ] [--output=]
locate [-e <dir1,dir2,...>] [-f <fs_type1,...> ] [-l ]
[-c] <[-U ] [-u]>
general usage: locate [-Vh] [--version] [--help]
Options:
-u - Create slocate database starting at path /.
-U - Create slocate database starting at path .
-c - Parse original GNU Locate's '/etc/updatedb.conf'
when using the -u or -U options. If 'updatedb' is
symbolically linked to the 'locate' binary, the
original configuration file will automatically be
used.
-e <dir1,dir2,...> - Exclude directories from the slocate database when
using the -u or -U options.
-f <fs_type1,...> - Exclude file system types from the slocate database
when using the -u or -U options. (ie. NFS, etc).
-l - Security level.
0 turns security checks off. This will make
searchs faster.
1 turns security checks on. This is the default.
-q - Quiet mode. Error messages are suppressed.
-n - Limit the amount of results shown to .
-i - Does a case insensitive search.
-r
--regexp= - Search the database using a basic POSIX regular
expression.
-o
--output= - Specifies the database to create.
-d
--database= - Specfies the path of databases to search in.
-h
--help - Display this help.
-v
--verbose - Verbose mode. Display files when creating database.
-V
--version - Display version.
Author: Kevin Lindsay
Bugs: klindsay@mkintraweb.com
FTP: ftp://ftp.geekreview.org/slocate/(...)
ftp://ftp.mkintraweb.com/pub/linux/slocate/(...)
HTTP: http://www.geekreview.org/slocate/(...)
mar sep 27 00:53:45 CEST 2005
La console m'affiche sa dans la console.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.