The UNIX and Linux Forums  


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
Mi a parancs, hogy megtudja, a rekord hosszúságú rögzített hosszúságú file? tranq01 A UNIX a dummies Kérdések és válaszok 9 12-04-2008 04:04 PM
Debian: New yarssr csomag fix tetszőleges héj parancs iBot Biztonsági figyelmeztetéseket (RSS) 0 01-28-2008 10:20 AM
Mi az a maximális hossza th-os parancssori UNIX. kumardesai A UNIX a dummies Kérdések és válaszok 2 11-28-2007 07:37 AM
Honnan veszi a változó / paramétereket a parancssorban? avisram A UNIX a dummies Kérdések és válaszok 1 07-21-2005 10:47 AM
áthárításán parancssori paraméterek funkciók - sh vino Shell programozás és Scripting 5 03-05-2005 05:51 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 11-19-2007
cmcnorgan cmcnorgan is offline
Regisztrált felhasználó
  
 

Join Date: Nov 2007
Helyszín: London, Ontario, Kanada
Hozzászólások: 2
Építési parancssori paraméterek tetszőleges hosszúságú

Nem találtam egy már létező szál foglalkozott ezzel a kérdéssel, úgyhogy remélhetőleg ez nem felesleges semmit korábban kiküldték. Az eljárás:

Írok egy C-Shell script, hogy fut egy program, ami vesz egy tetszőleges számú paramétert:

myprog-a fájl1 \
-b file2 \
-c file3 ... \
-n fileN \
-művelet "a + b + c +...+ n"


A fájlokat, amelyek myprog működik, vannak alkönyvtárak: 01/01.ext, 02/02.ext, ... etc

Mivel a fájlnevek történik, hogy illeszkedjen a könyvtár nevét, szeretném, hogy át tudja hárítani a forgatókönyvet tetszőleges számú könyvtárak (a gyakorlatban nem lesz kevesebb, mint 26, így nincs aggályos kifogyni az "-x" címke ). A szkript ezután építeni a paraméterek listája az myprog annak érdekében, hogy
myscript.sh 01 02 03 ... 12
tenné is terjeszkedni:
myprog-a 01/01.ext-b 02/02.ext ... 11/11.ext-k-l 12/12.ext \
-művelet "a + b + c +...+ k + l"


Van egy egyszerű módja ennek?
  #2 (permalink)  
Old 11-19-2007
Smiling Dragon's Avatar
Mosolygó Dragon Smiling Dragon is offline Forum Advisor  
Rendezetlen Felhasználó
  
 

Join Date: Nov 2007
Helyszín: Új-Zéland
Posts: 922
Post

tesztelt, de meg kell neked elég közel

Kód:
#!/bin/sh
if [ $# -gt 26 ]
then
   echo "Too many args!"
   exit 1
fi

letters="a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z"
cli="myprog"
count=1
operation=""
for argument in $*
do
   count=`expr $count + 1`
   letter=`echo $letters | head +$count | tail -1`
   cli="$cli -$letter ${argument}/${argument}.ext"
   if [ -z "$operation" ]
   then
      operation=$letter
   else
      operation="${operation}+${letter}"
   fi
done
cli="$cli -operation \"$operation\""
$cli

  #3 (permalink)  
Old 11-20-2007
Franklin52 Franklin52 is offline Forum Staff  
Moderátor
  
 

Join Date: Feb 2007
Hozzászólások: 4.342

Kód:
#!/bin/sh

echo $1 |
awk 'BEGIN {
n="abcdefghijklmnopqrstuvwxyz"
printf("myprog")}
{ for (i=1;i<=$0;i++) {
  printf(" -%s %02d/%02d.ext", substr(n,i,1), i, i)
  op=op substr(n,i,1)"+"
  }
  op=substr(op,1,length(op)-1)
  printf(" -operation \"%s\"\n",op)
}'

Használat: "scriptname 5" helyett a "scriptname 01 ... 05".

Egyik érték is elegendő.

Üdvözlettel
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 07:35 AM.


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