![]() |
|
|
google unix.com
|
|||||||
| Forum | Registrati | Regole Forum | Collegamenti | Album | FAQ | Members List | Calendario | Ricerca | Today's Posts | Mark Forums Read |
| Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui. |
Più di UNIX e Linux Forum Argomenti potreste trovare utili
|
||||
| Filo | Thread Starter | Forum | Risposte | Ultimo Post |
| per loop problema | mdap | Shell scripting e di programmazione | 3 | 08-16-2008 02:27 PM |
| Problema Loop | namishtiwari | UNIX for Dummies Domande & Risposte | 4 | 07-15-2008 12:01 PM |
| awk e loop problema | invinzin21 | Shell scripting e di programmazione | 3 | 02-04-2008 09:54 PM |
| Problema ciclo | dhananjaysk | Shell scripting e di programmazione | 3 | 03-31-2006 02:05 PM |
| problema con il ciclo while | mridula | Di programmazione ad alto livello | 1 | 12-11-2005 11:44 AM |
![]() |
|
|
LinkBack | Thread Tools | Cerca in questo Thread | Rate Thread | Modalità di visualizzazione |
|
|
|
||||
|
Hi TUTTI
Sono greping qualche cosa da un file, una cosa è "/ var / www / html" / var / www / esempio "e quindi sul suo mostrando come e quando utilizzare questo echo.i desidera passare ciascuno di loro in una loop per processing.Like iniziare con / var / www / html poi 2a e così uno Ma che non funziona come qualsiasi iead i dare uno da un valore. Il mio codice docroot \u003d $ (grep-H DocumentRoot / etc / httpd / conf.d / *. conf | awk-F '' '(print $ 3)' | sort-u | uniq) doccount \u003d $ (grep-H DocumentRoot / etc / httpd / conf.d / *. conf | awk-F '' '(print $ 3)' | sort-u | uniq | wc-l) per ((i \u003d 0; i <\u003d $ doccount; + + i)) fare confd \u003d "docroot $ \ n" echo $ confd trovare $ confd tipo d-perm / o \u003d w | letto mentre DIR fare fare qualche cosa # # fatto mentre fatto done # # per fare |
|
||||
|
Grazie per la risposta, non di lavoro, quando i mezzi passare un valore alla variabile in loop $ confd, non mi processo invece considerare in linea con tutte le root.I documento mostra il mio codice, e se eseguire i staticelly utilizzando / var / www / html è uscita bene, ma quando i posti in loop problema occourced.I mostra di uscita per entrambi. Codice:
#!/bin/bash
let test=0
abc="/var/www/html"
docroot=$(grep -H DocumentRoot /etc/httpd/conf.d/*.conf | awk -F' ' '{ print $3 }'| sort -u | uniq)
doccount=$(grep -H DocumentRoot /etc/httpd/conf.d/*.conf | awk -F' ' '{ print $3 }'| sort -u | uniq | wc -l)
#i=0
#while [ $i -le $doccount ]
# do
# confd="$docroot\n"
#echo $confd
find $abc -type d -perm /o=w | while read DIR
do
test=$(cd "$DIR"; ls -A *.html *.php 2>/dev/null | wc -l)
if [ "$test" != "0" ]
then
echo "DIR Found WITH FILES"$DIR $test
fi
if [ `ls -a "$DIR" | wc -l` -le 2 ]
then
echo "Writable_dir Empty"$DIR
fi
done
#i=$(( $i + 1 ))
#done
count=$(find /var/www/html/ -type f -perm /o=w | grep -i ".htaccess"| wc -l )
find "$abc" -type f -perm /o=w | grep -i ".htaccess" | awk -F. '{ print $1 }' | while read this
do
echo "_htaccess_is_Writable"$this
done
Output with static docroot
DIR Found WITH FILES/var/www/html/test3 4
DIR Found WITH FILES/var/www/html/test3/abc 2
Writable_dir Empty/var/www/html/abc
DIR Found WITH FILES/var/www/html/test/abc 1
DIR Found WITH FILES/var/www/html/test2 1
Output with duynamic Docroot
"/var/www/html" "/var/www/test/www.example.com" "/var/www/www.example.com"\n
find: "/var/www: No such file or directory
find: "/var/www/test: No such file or directory
find: "/var/www: No such file or directory
"/var/www/html" "/var/www/test/www.example.com" "/var/www/www.example.com"\n
find: "/var/www: No such file or directory
find: "/var/www/test: No such file or directory
|
|
|||||
|
Il codice è un po 'di sbagliato nel tuo assegnando più directory al docroot e aggiungendo una nuova riga. Non è necessario per la nuova linea. Imposta confd a "$ docroot" e non "docroot $ \ n". Quando si esegue la ricerca $ confd sarà messo in una riga vuota della riga di comando in cui non appartiene.
# while [$ i-le $ doccount] # Fare # Confd \u003d "docroot $ \ n" # echo $ confd confd \u003d "$ docroot" trovare $ confd tipo d-perm / o \u003d w | letto mentre DIR che sarebbe find / var / www / html / var / www / test / www.example.com / var / www / www.example.com tipo d-perm / o \u003d w | letto mentre DIR |
![]() |
| Segnalibri |
| Thread Tools | Cerca in questo Thread |
| Modalità di visualizzazione | Vota questo thread |
|
|