The UNIX and Linux Forums  


Go Back   Die UNIX-und Linux-Foren > Top Foren > Shell Programmierung und Scripting
.
Google unix.com



Shell Programmierung und Scripting Post Fragen zu ksh, csh, sh, bash, Perl, PHP, sed, awk und anderen Shell-Skripte und Shell-Scripting-Sprachen hier.

Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
Faden Thread Starter Forum Antworten Last Post
Erzeugen von Dateien mit der Zeit im Abstand von fünfzehn Minuten aajan Shell Programmierung und Scripting 0 09-25-2007 02:54 AM
Befehl, um herauszufinden, Gesamtkapazität von einer bestimmten Datei-Größe (über den Server) abhinov SUN Solaris 3 08-08-2007 07:48 AM
Erstellt eine Datei mit einer bestimmten Größe aldowsary AIX 3 12-14-2006 11:35 AM
Bash-Skript, die sich für kleine Dateien, aber nicht für große Dateien. davidpreml Shell Programmierung und Scripting 1 11-01-2006 11:06 AM
So testen Sie für einen bestimmten Dateigröße GEBRAUN UNIX for Dummies Questions & Answers 1 02-20-2006 11:50 AM

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 06-26-2006
nxd25 nxd25 is offline
Registrierte Nutzer
  
 

Join Date: Jun 2006
Beiträge: 2
Erzeugen von Dateien bestimmter Größe

Ich habe immer auf ein Skript, um Größe, R. und Dateinamen Variablen aus einer Eingabedatei und der Schaffung der gleichen Struktur dir zusammen mit der Datei von bestimmten Größe.

Ein Beispiel für die Eingabe-Datei:

Größe / dirname / filename
2100/JAN_06/12345ABC.TCC
2354/FEB_06/24564XYZ.NOS
11240/MAR_06/1212ABAB.NCC

Ich bin in der Lage, Ergebnisse zu erzielen mit den folgenden Code ein:


Code:
#!/bin/sh

set filesize=$1
set dirname=$2
set filename=$3

awk -F/ '{print $1,$2,$3}' os_listing.out | \
while read filesize dirname filename
do
        mkdir $dirname
        cd $dirname
        dd if=test/inputfile of=$filename bs=1 count=$filesize
        cd ..
done

Die Eingabedatei ist nur eine Datei mit Text, der zufällig entspricht die Größe der größten Datei dieses Skript erstellt.

Was ich versuche, herauszufinden, ist, wie Sie Text aus einer festen Zeichenlänge, speziell den Dateinamen innerhalb der einzelnen Datei, wenn es erstellt wurde, haben dann den dd-Befehl erstellen Sie die Datei, der bestimmte Größe.

Wenn ich eine der Optionen suchen mit dem dd-Befehl, wird es einfach auf die Größe zählt, die Ergebnisse in größeren Dateien.

Bitte lassen Sie mich wissen, wenn zusätzliche Informationen benötigt werden.

Vielen Dank im Voraus für jede Hilfe und Unterstützung.
  #2 (permalink)  
Old 06-26-2006
blowtorch's Avatar
Lötlampe blowtorch is offline Forum Advisor  
Supporter
  
 

Join Date: Dec 2004
Ort: Singapur
Beiträge: 2.350
Es hängt davon ab, wo Sie wollen, fügen Sie den Dateinamen in der Ausgabedatei, sondern sich mit diesem:

Code:
#!/bin/ksh

awk -F/ '{print $1,$2,$3}' os_listing.out | while read filesize dirname filename; do
        mkdir $dirname
        cd $dirname
        echo $filename $filesize > $filename
        count=$(($filesize-${#filename}))
        dd if=/tmp/inputfile of=$filename bs=1 count=$count seek=${#filename}
        cd ..
done

Dieser Code fügt den Dateinamen an den Anfang der Datei und dann hängt (Anzahl length_of_filename-) Zeichen aus der Eingabedatei.
  #3 (permalink)  
Old 06-27-2006
nxd25 nxd25 is offline
Registrierte Nutzer
  
 

Join Date: Jun 2006
Beiträge: 2
Das funktioniert wunderbar. Vielen Dank für die schnelle Antwort. Ich wirklich schätzen die große Hilfe.
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 10:13 PM.


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