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
helyett több vonalra egy sor siba.s.nayak Shell programozás és Scripting 3 05-28-2008 03:43 AM
tr segítségével, hogy több sornyi kimenetet egy sorban otes4 Shell programozás és Scripting 3 02-18-2008 11:30 AM
Concatenating több vonal egy vonal, ha egyezik minta phixsius Shell programozás és Scripting 13 01-24-2008 11:02 PM
Split hatalmas sor a több 120 karakter vonalakat sed? jerome_1664 Shell programozás és Scripting 2 08-17-2006 01:03 PM
Szállítmány egyetlen sort több vonal thanuman Shell programozás és Scripting 4 02-23-2005 04:56 AM

 
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 03-29-2008
dd_sh dd_sh is offline
Regisztrált felhasználó
  
 

Join Date: Mar 2008
Hozzászólások: 2
Unhappy Szállítmány a vonal több sorok

Hi Guys,

Szükségem van egy segítség. Én szép új szintre a shell programozása. Próbáltam megosztani a hosszú sorok a többszörös sorokat, kevés feltételeknek. Én goggle a kódot, és talált néhány töredék, és megpróbálta módosított ez de van néhány furcsa, megmagyarázhatatlan jelenségeket is.

El kell felosztani a sorokat, ha sor hosszabb, mint 120 karakter, akkor azt kell, hogy külön hozzáadásával "\" a végén mintegy 120. karakter. Megjegyzés: ez csak leválasztott elhatárolása találat, mint a tér vagy a vessző. És itt a kódja

#! / bin / sh

awk '(
if (length ($ 0)> 120) A
(
str \u003d $ 0;
i \u003d 0;

> while (length (str)> 120) A
(
j \u003d 0;
for (m \u003d 1; m <\u003d 120; m + +)
(
letter \u003d substr ($ 0, i + m, 1);
# printf ( "% s \ n", levél);
if (levél !\u003d",")
majd
vagy
(
-j \u003d m;
# Printf ( "% s \ n", substr ($ 0, i +1, j));
)
fi
if (levél! \u003d "")
majd
vagy
: (J \u003d m;)
fi

)

printf ( "% s / \ n", substr ($ 0, i +1, j));

i + \u003d j;
str \u003d substr ($ 0, i, length ($ 0));
)

if (length (str)> 1) A
printf ( "% s \ n", substr (str, 2, length (str)));

)
vagy
(
print $ 0
)
) 'Myfile.txt


De a probléma az volt, hogy a fenti feltételnek, működik, ha léptettek posted sorrendben. Ha valaki dolgozott együtt egyenlő és tegye a kifejezés után, akkor ez nem működik megfelelően.

Én szintén nem tudja használni a kifejezést, vagy vesszővel és space

Is kell a program, amely képes visszaállítani a ugyanazon művelet. Én is olvastam néhány tutorial about sed de megállapították, hogy nagyon zavaró az új felhasználók számára
 

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 10:35 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