The UNIX and Linux Forums  
Hallo und herzlich Willkommen aus den Vereinigten Staaten, die UNIX-und Linux-Foren! Vielen Dank für Ihren Besuch und die Teilnahme an unserem Global Community.

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
Domain nicht gelöst Skript aus Sergiu-IT IP-Networking 6 04-11-2008 06:52 AM
Kudda erfolgreich gelöst das Herunterladen Probleme für eine Vielzahl von Web-Video angelstar UNIX-und Linux-Anwendungen 0 04-10-2008 06:41 AM
XDMCP, DNS, mehr als Broadcast-Lösung, SONDERN kymberm IP-Networking 3 02-25-2003 10:47 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 11-07-2005
mskcc mskcc is offline
Registrierte Nutzer
  
 

Join Date: Jul 2005
Beiträge: 37
können diese gelöst mit awk und sed?

Hi Master,

Code:
___________________________________________________________________________________
Group of orthologs #1. Best score 3010 bits
Score difference with first non-orthologous sequence - yeast:3010   human:2754
YHR165C             	100.00%		PRP8_HUMAN          	100.00%
___________________________________________________________________________________
Group of orthologs #2. Best score 2100 bits
Score difference with first non-orthologous sequence - yeast:2033   human:1978
YLR106C             	100.00%		MDN1_HUMAN          	100.00%
___________________________________________________________________________________
Group of orthologs #3. Best score 2082 bits
Score difference with first non-orthologous sequence - yeast:997   human:593
YJL130C             	100.00%		PYR1_HUMAN          	100.00%
___________________________________________________________________________________
Group of orthologs #4. Best score 1959 bits
Score difference with first non-orthologous sequence - yeast:1959   human:1007
YKR054C             	100.00%		DYHC_HUMAN          	100.00%
___________________________________________________________________________________
Group of orthologs #5. Best score 1855 bits
Score difference with first non-orthologous sequence - yeast:1855   human:1022
YNR016C             	100.00%		Q6KE87_HUMAN        	100.00%
YMR207C             	19.86%		COA2_HUMAN          	90.52%
                    	       		COA1_HUMAN          	53.30%
___________________________________________________________________________________
Group of orthologs #6. Best score 1838 bits
Score difference with first non-orthologous sequence - yeast:1748   human:1767
YDL140C             	100.00%		RPB1_HUMAN          	100.00%
___________________________________________________________________________________
Group of orthologs #7. Best score 1768 bits
Score difference with first non-orthologous sequence - yeast:1768   human:1636
YJR066W             	100.00%		Q4LE76_HUMAN        	100.00%
YKL203C             	49.22%
Vor Aufzeichnungen sind Teil einer Datei. Was muss ich tun, um die Informationen aus dieser Datei und stellt sie in einen speadsheet Format, wie diese: (Beispiele aus # 5 und # 7)

Group_number; Best_Score; S_one; P_one; S_two; P_two
5, 1855; YNR016C; 100,00%; Q6KE87_HUMAN; 100,00%
5, 1855; YMR207C; 19,86%; COA2_HUMAN; 90,52%
5, 1855;;; COA1_HUMAN; 53,30%
7; 1768; YJR066W; 100,00%; Q4LE76_HUMAN; 100,00%
7; 1768; YKL203C; 49%;

Vielen Dank im Voraus!

Zuletzt bearbeitet von Perderabo; am 11-08-2005 11:41 AM.. Grund: Code-Tags hinzufügen und deaktivieren Smilies, um die Lesbarkeit zu
  #2 (permalink)  
Old 11-08-2005
Abhishek Ghose Abhishek Ghose is offline
Registrierte Nutzer
  
 

Join Date: Sep 2005
Ort: Chennai
Beiträge: 81
Sehen Sie sich das Beispiel:
wenn die letzte Zeile von 5 wird als "5; 1855;;; COA1_HUMAN; 53,30%"
shouldnt der letzten Zeile von 7 angezeigt werden, wie "7; 1768;;; YKL203C; 49%" anstelle von "7; 1768; YKL203C; 49%;"?
  #3 (permalink)  
Old 11-08-2005
mskcc mskcc is offline
Registrierte Nutzer
  
 

Join Date: Jul 2005
Beiträge: 37
thx

Nein, die Original-Datei wurde,

leer leer Rekord für # 5
Rekord: leer leer # 7.

Als ich gepostet die Aufzeichnungen, die leeren Räume wurden verpasst. Aber es sollten extrahiert werden als ein leerer Raum. Nochmals vielen Dank.
  #4 (permalink)  
Old 11-09-2005
Perderabo's Avatar
Perderabo Perderabo is offline Forum Staff  
Unix-Daemon
  
 

Join Date: Aug 2001
Location: Ashburn, Virginia
Posts: 9123
Das ist schwieriger als es aussieht, weil Felder sind sowohl von Syntax und Position. Hier ist eine ksh-Skript, mit Ihrem Beispieldaten. Aber jeder Überraschungen in Ihrem realen Daten könnte es.
Code:
#! /usr/bin/ksh

IFS=""
while read line ; do
    line=${line##+(_)}
    ((${#line})) ||  continue
    if [[ "$line" != "Group of orthologs"* ]] ; then
        echo error looking for start of record 1>&2
        echo $line  1>&2
        exit 1
    fi
    line=${line#"Group of orthologs #"}
    Group_number=${line%%\.*}
    line=${line#*"Best score "}
    Best_Score=${line%" "*}
    read line
    if [[ $line != "Score difference with "* ]] ; then
        echo "error stepping over 2nd line of group $Group_number" 1>&2
        echo $line  1>&2
        exit 1
    fi
    ProteinLines=1
    while ((ProteinLines)) ; do
        if read line ; then
            line=${line##+(_)}
            if ((!${#line})) ; then
                ProteinLines=0
            else
                eval set $line
                firstchar="${line%${line#?}}"
                if [[ $# -eq 4 ]] ; then
                    S_one=$1
                    P_one=$2
                    S_two=$3
                    P_two=$4
                else
                    if [[ $firstchar = [a-zA-Z0-9] ]] ; then
                        S_one=$1
                        P_one=$2
                        S_two=""
                        P_two=""
                    else
                        S_one=""
                        P_one=""
                        S_two=$1
                        P_two=$2
                    fi
                fi
                echo "${Group_number};${Best_Score};${S_one};${P_one};${S_two};${P_two};"
            fi
        else
            ProteinLines=0
        fi
    done
done
exit 0
Code:
$
$ ./pro < data
1;3010;YHR165C;100.00%;PRP8_HUMAN;100.00%;
2;2100;YLR106C;100.00%;MDN1_HUMAN;100.00%;
3;2082;YJL130C;100.00%;PYR1_HUMAN;100.00%;
4;1959;YKR054C;100.00%;DYHC_HUMAN;100.00%;
5;1855;YNR016C;100.00%;Q6KE87_HUMAN;100.00%;
5;1855;YMR207C;19.86%;COA2_HUMAN;90.52%;
5;1855;;;COA1_HUMAN;53.30%;
6;1838;YDL140C;100.00%;RPB1_HUMAN;100.00%;
7;1768;YJR066W;100.00%;Q4LE76_HUMAN;100.00%;
7;1768;YKL203C;49.22%;;;
$
  #5 (permalink)  
Old 11-09-2005
Abhishek Ghose Abhishek Ghose is offline
Registrierte Nutzer
  
 

Join Date: Sep 2005
Ort: Chennai
Beiträge: 81
Heres mit Kommandozeile PERL:

$ perl -ne 'hacken, Split;
> If ($ _ [0] eq "Gruppe")
> ($ Group \u003d substr ($ _ [3], 1, length ($ _ [3]) -2); $ score \u003d $ _ [6];)
> Else (
> If ($ _ ~ / ^ \ s *$/&&$_[ 0] ne "Ergebnis")
> (If (@_\u003d\u003d 2) (push (@_,"","");}
> Wenn (@_\u003d\u003d 3) (unshift (@_,"");}
> $ String \u003d join (";",@_);
> Print ( "\ n $-Gruppe, $ score, $ string ");}}' file_name


Mariä Himmelfahrt (n):
Ihre Einträge kann nur 4 Elemente auf das Maximum.
Das heißt,
Aufzeichnung / leeren Datensatz / leeren Datensatz / leeren Datensatz / blank
Wenn Sie mir sagen, ob dieser Registerkarte getrennt sind, kann ich helfen, mit einer robusten Code.
  #6 (permalink)  
Old 11-09-2005
Abhishek Ghose Abhishek Ghose is offline
Registrierte Nutzer
  
 

Join Date: Sep 2005
Ort: Chennai
Beiträge: 81
Und wie Perderabo sagt, eine echte Überraschung in der Daten könnte es!
(Beachten Sie, dass Perderabos "Code generiert abschließenden Semikolon, die Sie wahrscheinlich nicht brauchen)
Closed Thread

Lesezeichen

Tags
Linux

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 03:36 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