![]() |
|
|
google unix.com
|
|||||||
| Forums | Registreer | Forum Regels | Links | Albums | Veelgestelde vragen | Ledenlijst | Kalender | Zoeken | Today's Posts | Markeer forums als gelezen |
| Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier. |
Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
|
||||
| Draad | Thread Starter | Forum | Antwoorden | Last Post |
| print alsook tellen de bestanden gevonden door find commando | amicon007 | Programmeren en Shell Scripting | 3 | 02-05-2009 12:38 |
| find commando in de while lus - hoe je de controle als er geen bestanden gevonden? | mavsman | Programmeren en Shell Scripting | 3 | 04-03-2008 12:44 |
| Files in Lost + Found | spricks | UNIX voor Dummies Questions & Answers | 1 | 02-05-2008 11:26 |
| Bewaking van een directory voor nieuwe bestanden met. Xx en uitvoerende opdracht indien gevonden | krkan | Programmeren en Shell Scripting | 4 | 03-14-2006 11:16 PM |
| variabele niet gevonden met lus? | douknownam | Programmeren en Shell Scripting | 2 | 09-27-2004 11:59 |
![]() |
|
|
LinkBack | Thread Tools | Zoeken in deze Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Loop via gevonden bestanden
Hi I am trying to write a script die lus door alle bestanden die eindigen op ". Txt" en vraagt de gebruiker als ze willen om het bestand te verwijderen of niet Code:
#this print out all files dir=/root/etc/ find $dir -name "*.txt" output: 1.txt 2.txt etc maar wat ik echt wil is 1.txt verwijderen (J / N): 2.txt verwijderen (J / N): etc Ik heb geprobeerd lussen bijvoorbeeld Code:
for file $dir in "*.txt"; do echo "$file delete (y/n)" done maar zij dont lijken te werken, alle ideeën zijn zeer gewaardeerd dankzij |
|
||||
|
Allereerst bedankt voor de antwoorden, de reeks van commando's dont precies doen wat ik wil al unfornutely @ radoulov Is het mogelijk om dit iets te vragen de gebruiker eerst verwijderen, Ik heb geprobeerd om te rotzooien met cant maar uitzoeken correcte syntaxis Code:
find $dir -name "*.txt" -exec echo "delete y/n" {} \; read x {} \;
@ cfjohnson dit doesnt lijken te zoeken in de juiste directory, vond ik een voorbeeld die zullen zoeken in de juiste richting bijvoorbeeld Code:
for file in `find $dir -name "*.txt"`; do Het enige probleem is dat sommige bestanden hebben ruimten in hun naam bijvoorbeeld '/ etc / ruimte inFilename " en dan print het bestand uit tweemaal dwz / etc / ruimte inFilename is er toch om af te drukken als een? Nogmaals bedankt Calypso |
|
||||
|
@ cfajohnson Im bang dat het nog steeds doesnt lijkt te werken, nu het script neemt alle spaties, dus toen ik doen Code:
find $dir -name "*.txt" | while IFS= read -r file; do mv -i $file `echo file | sed 's/ //g'` done Ik krijg de volgende fouten / etc / file: No such file or directory naam: No such file or directory |
![]() |
| Bladwijzers |
| Thread Tools | Zoeken in deze Thread |
| Display Modes | Beoordeel deze draad |
|
|