![]() |
|
|
google unix.com
|
|||||||
| Forum | Registrera | Forum Regler | Länkar | Album | FAQ | Medlemslista | Kalender | Söka | Dagens inlägg | Markera forum som lästa |
| Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här. |
Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Senaste Inlägg |
| Hur kan jag läsa en text fil i UNIX - ELF-64 körbara objekt fil - IA64 | alexcol | UNIX för avancerade & Expertanvändare | 8 | 11-07-2008 08:56 |
| Läs textfil från en angiven sträng till slutet | bsrajirs | UNIX för avancerade & Expertanvändare | 9 | 01-11-2008 01:05 |
| Läs specifik text från en loggfil | ragha81 | Shell-programmering och Skript | 4 | 10-17-2006 02:17 |
| behöva läsa 3 ° karaktär från en textfil | piltrafa | UNIX for Dummies Frågor & Svar | 15 | 07-26-2005 11:19 |
| hjälp med cshell script för att läsa 1 eller flera lex filer | homerj546 | Shell-programmering och Skript | 1 | 04-18-2004 11:01 |
![]() |
|
|
LinkBack | Thread Tools | Sök i denna tråd | Rate Thread | Visningslägen |
|
|
|
#1 (permalänk)
|
||||
|
||||
|
Läs textfil i Cshell
Jag har varit att söka på forum för information om behandlingen en textfil i en Cshell script men ingenting Jag försöker fungerar. Mina senaste försöket var:
uppsättning LASInputFile \u003d `ls *. [Ll] [Aa] [Ss] | head -1" echo $ LASInputFile samtidigt läsa linje göra echo $ line gjort <$ LASInputFile Min felmeddelande: samtidigt: Expression syntax Tack för all hjälp Paul Hudgens Denver |
|
#2 (permalänk)
|
|||||
|
|||||
|
Bara en tanke att börja här ...
i stället för din loop, kan du ersätta det med en katt kommando? Jag vill bara se om filen har något att bearbeta och / eller om det finns någon typ av ärende fel. |
|
#3 (permalänk)
|
|||||
|
|||||
|
verkar som om du kombinerar flöde expression syntax för olika tankar .... "läsa" är ett Bourne / Korn shell inbyggd ... inte csh. varför inte bara detta: Kod:
set LASInputFile = `ls *.[Ll][Aa][Ss] | head -1` echo $LASInputFile cat $LASInputFile |
|
#4 (permalänk)
|
||||
|
||||
|
Tack för input. Katten kommandot inte visa min fil till skärmen korrekt. Föresten, jag är inte säker på om jag ska svara på användarens länk eller via snabbt svar.
|
|
#5 (permalänk)
|
||||
|
||||
|
Kod:
set LASInputFile = `ls *.[Ll][Aa][Ss] | head -1` set i=`cat $LASInputFile | wc -l` set j=1 while ($j <= $i) set line=`cat $LASInputFile | head -$j | tail -1` @ j = $j + 1 # do your thing with $line here. # for this example, we'll just echo # it back the screen echo $line end |
|
#6 (permalänk)
|
||||
|
||||
|
Jag får felmeddelandet: Okänd användare: VERSION
Följande är den första raden i mitt ärende: ~ VERSION Några av raderna i min fil börjar med ett tilde. Är det orsakar problem? Även jag är inställningen i \u003d 100 eftersom det är jag efter i de 100 linjer i en annars mycket lång fil. uppsättning LASInputFile \u003d `ls *. [Ll] [Aa] [Ss] | head -1" echo $ LASInputFile j. \u003d 1 while ($ j <\u003d 100) uppsättning linje \u003d `cat $ LASInputFile | huvudet - $ j | tail -1" @ J \u003d $ j + 1 echo $ line slut Tack för hjälpen Paul H. |
|
#7 (permalänk)
|
||||
|
||||
|
Förlåt, jag har gjort några smärre ändringar i ditt script: Kod:
set LASInputFile = `ls *.[Ll][Aa][Ss] | head -1` echo $LASInputFile set j=1 while ($j <= 100) set line="`cat $LASInputFile | head -$j | tail -1`" @ j = $j + 1 echo "$line" end Jag satte citationstecken runt "i linje" och "eko" delar av manus. Detta stoppar skal från utvärdering ~ VERSION som om det var en hemkatalog. |