![]() |
|
|
google unix.com
|
|||||||
| Fórumok | Regisztráció | Fórum Szabályok | Linkek | Albumok | GYIK | Tagok listája | Naptár | Keres | Mai hozzászólások | Megjelöl Fórumok Olvas |
| Shell programozás és Scripting Post kérdések KSH, CSH, SH, Bash, Perl, PHP, SED, AWK ÉS EGYÉB shell szkriptek és shell script nyelvek itt. |
Több, UNIX és Linux fórum témák Ön által talált Hasznos
|
||||
| Szál | Thread Starter | Fórum | Válaszok | Utolsó hozzászólás |
| hpux VG hozzáférhető, hanem eszköz fájl hiányzik! | mariusp | Fájlrendszerek, lemez és memória | 1 | 02-10-2007 03:18 PM |
| ellenőrzésére hiányzó kép oldalán egy mappát | Nayanajith | A UNIX a dummies Kérdések és válaszok | 4 | 06-26-2006 07:05 AM |
| Hiányzik init fájlok zsh és bash | Maag | SUN Solaris | 2 | 05-04-2006 05:37 PM |
| Missing Files Könyvtár | jays337 | A UNIX a dummies Kérdések és válaszok | 5 | 08-18-2005 09:23 PM |
| kép hiányzik | kabin lakója ^ | A UNIX a dummies Kérdések és válaszok | 4 | 09-22-2003 04:10 PM |
![]() |
|
|
LinkBack | Téma eszközök | Keresés a téma | Rate Thread | Megjelenítési módok |
|
|
|
||||
|
hogyan ellenőrizheti a hiányzó fájlt?
50 kép van ebben a könyvtárban (/ home / unixnewbie / wklyfiles), nevezetesen:
statistics.1 statistics.2 statistics.3 statistics.4 statistics.5 statistics.6 statistics.7 statistics.8 statistics.9 statistics.10 .... statistics.20 .... statistics.50 Hogyan állapítható meg, ha valaha lesz néhány kép hiányzik ott? És hogy hogyan kell pontosan tudja, melyik az a kép? Mint például a statistics.5, statistics.9, statistics.20 és statistics.35 kép hiányzik, hogy a héten. Köszönöm előre. |
|
||||
|
Készíts egy listát az összes fájlt kell ott, és összehasonlítani. Kód:
perl -le 'for my $i (1..50) { print "missing: statistics.$i" unless -f "statistics.$i" }'
Úgy értettem, az Perl szkriptet generál, hogy csak a listán, de kiderült, hogy olyan könnyű ezt minden Perl. Bocs, srácok (-: Csak annak illusztrálására, az eredeti javaslat, itt van egy másik megközelítés, az csak egyszerű parancsértelmező parancsok: Kód:
yes . | head -50 | nl | sed -e 's/^ *\([1-9][0-9]*\) .*/statistics.\1/' >list ls -rt statistics.* | diff list - A fájl "list" jön létre a nl segédprogram a sor számát, és a fájl nevét előtag használata hozzáadott sed. (Ez jött ki elég megkínozták - ez vélhetően egy sokkal könnyebb az awk, de most csak azt mondják, hogy használ Szkriptnyelvek lenne megcsalás, oké?) Aztán összehasonlítani ezt a listát az aktuális könyvtár listát. Ez megköveteli, hogy a diff elfogadja "-" azt jelenti, hogy "olvasd el a többi fájlt a standard input" egyébként, akkor kell használni, két ideiglenes fájlokat. (Ne felejtsük el, hogy távolítsa el őket, amikor megtörtént.) Last edited by korszak; 04/26/2008 at 01:34 PM.. Indoka: Alternatív megközelítés csak illusztráció |
|
||||
|
Hú, nagy köszönet alot korszak!
![]() Hope you don't mind a nyomon követési kérdés, mi van, ha akarom, hogy tároljuk a fájl minden meglévő statisztikák fájlokat? És éppen hogy csak azokat a tereket hiányzó fájlokat? ![]() Példa \u003d\u003d> statistics.1; statistics.2; statistics.3; statistics.4; <space>; statistics.6 ;...... statistics.19; <space>; statistics.21 ;...... statisztikák. 34; <space> ;.... statistics.50 Hmmm .. |
|
||||
|
Kód:
perl -e 'for my $i (1..50) { my $f = "statistics.$i"; print ($i > 1 ? ";" : ""), (-f "$f" ? "$f" : " ") }
print "\n"'
A "ha? Akkor: mást" szerkesszenek egy kicsit kemény, hogy ki az első sort, de lehetővé teszi a nagyon egyszerű logika, ha érti, hogyan működik. |
|
||||
|
Bash másik megoldás: Kód:
#!/bin/bash
for nbr in $(seq 50); do
if [ ! -e "statistics.$nbr" ]; then echo "statistics.$nbr is missing"; fi
done
Az egy-liners fanatikusok: Kód:
for nbr in $(seq 50); do if [ ! -e "statistics.$nbr" ]; then echo "statistics.$nbr is missing"; fi; done |
|
||||
|
Megfelelő fanatics lenne talán szívesebben Kód:
for n in $(seq 50); do [ -e statistics.$n ] || echo statistics.$n is missing; done seq nem általános, ezért kezdtem el a Perl, De ha van, akkor kiválóan alkalmas ez a fajta munka. |
![]() |
| Könyvjelzõk |
| Téma eszközök | Keresés a téma |
| Megjelenítési módok | Rate this thread |
|
|