The UNIX and Linux Forums  

Go Back   Die UNIX-und Linux-Foren > Top Foren > UNIX for Dummies Questions & Answers
.
Google unix.com



UNIX for Dummies Questions & Answers Wenn Sie nicht sicher sind, wo Sie eine UNIX-oder Linux-Frage, post it here. Alle UNIX-und Linux-Anfänger willkommen!

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
Split-Dateien mit Csplit savitha UNIX for Dummies Questions & Answers 7 12-01-2007 11:55 AM
Split eine Datei in 2 Dateien dummy_needhelp Shell Programmierung und Scripting 7 11-04-2007 07:36 PM
Gesamtzahl der Dateien, die "AAA" in Dateien, deren Namen die Datei _bbb * * sudheshnaiyer UNIX for Dummies Questions & Answers 1 08-16-2007 03:34 PM
Split eine Datei in 2 oder mehr Dateien bobo UNIX for Dummies Questions & Answers 4 01-16-2006 05:15 PM
awk Befehl, um in 2 Dateien m_subra_mani Shell Programmierung und Scripting 3 12-13-2005 05:13 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 Thread Tools Suche diesen Thread Rate Thread Anzeige-Modi
  #1 (permalink)  
Old 05-13-2008
Migrainegirl Migrainegirl is offline
Registrierte Nutzer
  
 

Registriert seit: Mai 2008
Beiträge: 3
Split-Dateien in bestimmten Anzahl von Output-Dateien

Hi everyone,

Ich habe einige große Text-Dateien, die ich benötige, um in eine bestimmte Anzahl von Dateien von gleicher Größe. Soweit ich weiß (und ich nicht wirklich wissen, dass viel ) Die Split-Befehl können Sie nur die Anzahl der Zeilen oder Bytes. Die Dateien sind alle mit einer anderen Größe, so dass die Anzahl der Zeilen unterscheiden sich auch.
Ich verwende den folgenden Code, um zu sehen, wie viele Zeilen jeder Ausgabedatei sollte (1 / 50 des Originals):

y \u003d "wc | awk '(print $ x/50)' | awk-F. '(if ($ 2> \u003d 1) (print $ 1 +1) else (print $ 1))' `
echo $ y

Das Problem ist, dass ich nicht verwenden können, diese Variable $ y als Input für die Split-Befehl wie folgt aus:

Split $ x-d-l $ y Split / $ x

Es einfach nicht funktioniert. Kennt jemand eine Möglichkeit, den Wert der Variable $ y in den Split-Befehl? Oder hat jemand einen besseren Weg zur Lösung des Problems?

Vielen Dank im Voraus!
  #2 (permalink)  
Old 05-13-2008
Ära era is offline Forum Advisor  
Herder sinnlosen Katzen (Am Sabbatical)
  
 

Join Date: März 2008
Location: / es / ist / nur / bin / sh
Beiträge: 3652
Es ist nicht wirklich klar, warum können Sie nicht die Variable. Die Art und Weise ist es nun, ich glaube nicht, dass es mit einem nützlichen Wert (was die echo Druck für Sie?), aber zur Festsetzung der Skripte, so klingt es wie das beste, es sei denn, Sie können erklären, warum es "einfach nicht funktioniert".

Der Annahme, dass $ x ist der Name der Datei, die Sie über die Aufteilung, versuchen Sie so etwas wie diese statt.

Code:
y=`wc -l < $x | awk '{ print 1+int($1/50) }'`
Ich habe in der Addition der auf der Theorie, dass dies etwas vage Nützliche auch mit Dateien, die zu klein sind, mit einer leichten Tendenz zu, die letzte Datei in der Reihe kleiner als die anderen. (Vielleicht Kluft von 49 statt zu kompensieren?)
  #3 (permalink)  
Old 05-13-2008
Migrainegirl Migrainegirl is offline
Registrierte Nutzer
  
 

Registriert seit: Mai 2008
Beiträge: 3
Das Echo ist mir eine Nummer zugeteilt, die es zu tun.
Der Zusatz wird verwendet, um rund um die Zahlen: 231,2 zu 232, sondern 231,0 Aufenthalte 231.

Ich habe versucht es wieder mit der Variable $ x explizit definiert und dann funktioniert es. Das Problem scheint zu $ x. (sorry, ich habe nicht viel Schlaf letzte Nacht ) Diese Änderungen meine Frage:
Wenn ich möchte meine Skript mit dem ursprünglichen Text-Datei als Eingabe (wie diesem: sh test.sh <file.txt), wie kann ich appelliere an die Original-Datei im Skript?
Ich dachte natürlich, dass die $ x in "Split-$ x-d-l $ y Split / $ x 'ersetzt werden mit" file.txt ", aber es ist nicht.

Zuletzt bearbeitet von Migrainegirl; am 05-13-2008 08:53 AM..
  #4 (permalink)  
Old 05-13-2008
Ära era is offline Forum Advisor  
Herder sinnlosen Katzen (Am Sabbatical)
  
 

Join Date: März 2008
Location: / es / ist / nur / bin / sh
Beiträge: 3652
Die Parameter werden in $ 1 $ 2 $ 3 usw., aber wenn Sie sich auf das Skript mit Umleitung, gibt es keine positional Parameter, und keine Datei-Namen, nur den Standard-Input.

Code:
vnix$ ./myscript file.txt oops   #  inside myscript, $1 is "file.txt" and $2 is "oops"
vnix$ ./myscript   # inside myscript, no file name is known; input is from standard input (terminal)
vnix$ ./myscript <file.txt   # again, inside myscript, no file name is known; input is redirected to come from file.txt

Zuletzt bearbeitet von ERA; 05-13-2008 auf 09:02 AM.. Grund: erleuchtenden hinzufügen (?) Beispiel
  #5 (permalink)  
Old 05-13-2008
Migrainegirl Migrainegirl is offline
Registrierte Nutzer
  
 

Registriert seit: Mai 2008
Beiträge: 3
Vielen Dank!
Closed Thread

Lesezeichen

Thread Tools Suche diesen Thread
Suche diesen Thread:

Erweiterte Suche
Anzeige-Modi Rate this thread
Rate this thread:

Forumregeln
Du möglicherweise nicht neue Themen
Du möglicherweise nicht nach Antworten
Du möglicherweise nicht post-Anlagen
Du möglicherweise nicht bearbeiten Sie Ihre Beiträge

BB-Code ist Auf
Smilies sind Auf
[IMG] Code Auf
HTML-Code ist Aus
Trackbacks sind Auf
Pingbacks sind Auf
Refbacks sind Auf




Alle Zeiten sind GMT -4. Es ist jetzt 11:17 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Ltd. Sprachliche Übersetzungen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Die UNIX-und Linux-Foren Content © Copyright 1993-2009. Alle Rechte Reserved.Ad Management von RedTyger

Content Relevant URLs durch vBSEO 3.2.0