The UNIX and Linux Forums  
Hello and Welcome-tól az Egyesült Államokat, hogy az UNIX és Linux Forums? Köszönjük, hogy meglátogatta és csatlakozik Globális Közösség.

Go Back   A UNIX és Linux Forums > Top Fórumok > Shell programozás és Scripting
.
google unix.com



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
Auto példányt fájlok mappát a mappa a pillanatban írásban Bashar A UNIX a fejlett és szakértői Felhasználók 2 08-21-2008 03:44 PM
foreach loop ROOZ Shell programozás és Scripting 3 06-05-2008 04:20 PM
foreach loop abch624 Shell programozás és Scripting 1 03-19-2008 09:34 PM
Parse a. Txt fájlt a mappa nevét és FTP a corrsponding mappát. MeganP Shell programozás és Scripting 3 07-03-2007 02:54 PM
foreach parancs? geoquest A UNIX a dummies Kérdések és válaszok 5 05-20-2002 06:11 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Téma eszközök Keresés a téma Rate Thread Megjelenítési módok
  #1 (permalink)  
Old 08-10-2007
eltinator eltinator is offline
Regisztrált felhasználó
  
 

Join Date: Jul 2007
Hozzászólások: 63
foreach mappa

Szia,

Van egy kis probléma itt, és nem tudom, hogy mûködjön. Én vagyok a programozás és a bash szkriptet kell tennem valamit, hogy az összes mappát a könyvtárban. Szóval én vagyok a könyvtárban, és szeretném használni a foreach, de Nem tudom, hogyan kell hivatkozni az összes mappát az adott könyvtárban. Ahhoz, hogy a dolgok egyszerű Here's my code:

Kód:
foreach instance (.)
cd instance
mkdir test
end
Alapvetően minden mappát adott könyvtárban, azt akarom, hogy CD-jét, és hozzon létre egy mappát nevű teszt. Van ötleted?
  #2 (permalink)  
Old 08-11-2007
blowtorch's Avatar
blowtorch blowtorch is offline Forum Advisor  
Supporter
  
 

Join Date: Dec 2004
Helyszín: Szingapúr
Hozzászólások: 2350
Valami ilyesmi:
Kód:
for file in *; do
   if [ -d $file ]; then
      cd $file; mkdir test
   fi
done
-Edit
Átugorhatod vizsgálatára vonatkozó könyvtár is. "cd" nem fog semmit, kivéve a könyvtárak (de lehet, hogy a linkek mutatnak könyvtárak és gondolja a végén olyan "teszt", ha te nem akarod).
  #3 (permalink)  
Old 08-11-2007
Lorcan lorcan is offline
Regisztrált felhasználó
  
 

Join Date: May 2007
Posts: 219
Egy kis korrekció blowtorch.

Kód:
for file in *; do
   if [ -d $file ]; then
      mkdir $file/test; 
   fi
done
Mivel most már kiadott egy cd parancs okozna a sub-dir csak az első könyvtárban. Tehát az eredmény nem a vártnak megfelelően.

Last edited by Lorcan; 08/11/2007 at 08:51 AM..
  #4 (permalink)  
Old 08-13-2007
eltinator eltinator is offline
Regisztrált felhasználó
  
 

Join Date: Jul 2007
Hozzászólások: 63
Idézet:
Originally Posted by Lorcan View Post
Egy kis korrekció blowtorch.

Kód:
for file in *; do
   if [ -d $file ]; then
      mkdir $file/test; 
   fi
done
Mivel most már kiadott egy cd parancs okozna a sub-dir csak az első könyvtárban. Tehát az eredmény nem a vártnak megfelelően.
Szia, volt egy kérdés a cd dolog, hogy lehet, hogy nem működik? Én vagyok a kód módosításával, hogy belépjen egyes almappa minden mappában, majd végrehajt egy parancsot így nem voltam biztos benne, hogyan kell csinálni. Alapvetően próbálok tenni valamit, mint ez most ...

aktuális könyvtár:
az ABC

Belül minden könyvtárban van egy fájl itt (használva példaként):
a / test / mappa / script.sh

Elnézést a generikus neveket. Most mit akarok én kézírás-hoz csinál van, hogy a hozzáférés script.sh minden dosszié és fuss ez. Én akartam csinálni az az utasítás, majd a CD-t, hogy a pálya és hajtsa végre a parancsot, de azt hiszem, ez nem ilyen egyszerű. Van ötleted? köszönöm!
  #5 (permalink)  
Old 08-13-2007
Lorcan lorcan is offline
Regisztrált felhasználó
  
 

Join Date: May 2007
Posts: 219
Meg lehet próbálni, mint a

Kód:
for file in *; do
   if [ -d $file ]; then
      ./$file/test/folder/script.sh; 
   fi
done

vagy ha van, különösen, hogy a könyvtár, és végrehajtja a szkript próbálja így

Kód:
scriptHome=$(pwd)   # Assuming that you are running from the path where a b c are present
for file in *; do
   if [ -d $file ]; then
      cd $file/test/folder;
      ./script.sh
   fi
   cd $scriptHome
done
Megint azt feltételezve, hogy a fa struktúra test / mappa van jelen a könyvtárak A, B és C.
  #6 (permalink)  
Old 08-11-2007
reborg's Avatar
reborg reborg is offline Forum Staff  
Administrator
  
 

Join Date: Mar 2005
Helyszín: Írország
Hozzászólások: 4.229
Idézet:
Originally Posted by eltinator View Post
Szia,
Kód:
foreach instance (.)
cd instance
mkdir test
end
A fő probléma itt nem logika, hanem, hogy te vagy használ a szintaxis a rossz shell. Ez csh szintaxis.
  #7 (permalink)  
Old 08-11-2007
eltinator eltinator is offline
Regisztrált felhasználó
  
 

Join Date: Jul 2007
Hozzászólások: 63
Köszönet fickók. Tehát alapvetően nincs foreach parancs bash?
Closed Thread

Könyvjelzõk

Téma eszközök Keresés a téma
Keresés a téma:

Részletes keresés
Megjelenítési módok Rate this thread
Rate this thread:

Posting szabályzat
Ön nem post new threads
Ön nem post válaszok
Ön nem post Csatolmányok
Ön nem szerkeszteni az üzeneteidet

BB kód van Be
Smilies vannak Be
[IMG] kód Be
HTML kód Ki
Trackbacks vannak Be
Pingbacks vannak Be
Refbacks vannak Be




Minden idő GMT -4. Az idő most 11:34 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Nyelvre lefordítva Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
A UNIX és Linux Fórum Tartalom Copyright © 1993-2009. Minden jog Reserved.Ad menedzsment RedTyger

Content Relevant URLs by vBSEO 3.2.0