echo >> file netjes uitschrijven

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Ortixx
  • Registratie: Mei 2006
  • Laatst online: 19-06-2023
Ik ben momenteel bezig om wat dingen te automaten op mijn server en ik maak gebruik van plowshare.

code:
1
2
3
4
5
6
7
8
9
10
11
12
      curl_with_log -b $COOKIES \
          -F "UPLOAD_IDENTIFIER=$UPLOAD_IDENTIFIER" \
          -F "sessionid=$UPLOAD_IDENTIFIER" \
          -F "file=@$FILE;filename=$(basename_file "$DESTFILE")" \
          -F "message=$DESCRIPTION" \
          -F "toemail=$TOEMAIL" \
          -F "fromemail=$FROMEMAIL" \
          -F "password=$LINK_PASSWORD" \
          -F "trafficurl=$TRAFFIC_URL" \
          -F "multiemail=$MULTIEMAIL" \
          "$DONE" | parse "downloadurl" "url = '\(.*\)';" >> links.txt
          echo "$FILE" >> links.txt


Dit is een snippte van de code dat de URL output als het klaar is met uploaded. Ik wil dat het wordt uitgeschreven naar een txt file om er later andere dingen mee te doen. Maar het belangerijkste is dat het netjes wordt opgemaakt. Als het MatLAB was zou ik het wel zelf kunnen doen maar ik kom bijna nergens met bash haha.

In ieder geval, ik zou de ouput (laatste 2 regels) graag in 2 tabellen willen ordenen. Eerste kolom is de URL (een na laatste regel) en tweede de filename (laatste regel). Het enige wat me nu lukt is om ze op elkaar te stapelen maar dat is niet zo handig.

Alvast bedankt! _/-\o_

Er hoeven geen fancy nummertjes enzo erbij. Gewoon heel simpel 2 kolomen die tab seperated zijn.

Acties:
  • 0 Henk 'm!

  • leuk_he
  • Registratie: Augustus 2000
  • Laatst online: 15-07 15:35

leuk_he

1. Controleer de kabel!

[google=echo,columns]

code:
1
printf "%10s %s\n" $FILE $TRAFFIC_URL


(tja, dan met je wel weten wat de maximale filenaam lengte is...)

Need more data. We want your specs. Ik ben ook maar dom. anders: forum, ff reggen, ff topic maken
En als je een oplossing hebt gevonden laat het ook ujb ff in dit topic horen.


Acties:
  • 0 Henk 'm!

  • Ortixx
  • Registratie: Mei 2006
  • Laatst online: 19-06-2023
traffic_url is niet de URL. de URL moet eerst geparsed worden... kan ik niet van de een na laatste regel een variable maken en dat dan met printf outputten?

Acties:
  • 0 Henk 'm!

  • leuk_he
  • Registratie: Augustus 2000
  • Laatst online: 15-07 15:35

leuk_he

1. Controleer de kabel!

Met het risco dat dit een mini cusursu scripten wordt (niet de bedoeleing).

stop je de output van parse in een variable en print die later?

code:
1
2
3
LINKS=`echo http|grep hhttp:`
FILE=PIET
printf "%10s %s" FILE PIET


enne ken je ook het echo zonder line commande

En anders print je er toch een FILE voor ZONDER \n newline.

[ Voor 19% gewijzigd door leuk_he op 22-12-2010 16:17 ]

Need more data. We want your specs. Ik ben ook maar dom. anders: forum, ff reggen, ff topic maken
En als je een oplossing hebt gevonden laat het ook ujb ff in dit topic horen.


Acties:
  • 0 Henk 'm!

  • Ortixx
  • Registratie: Mei 2006
  • Laatst online: 19-06-2023
ik denk dat ik hierdoor geflamed ga worden omdat ik er niks van snap maargoed:

code:
1
2
3
4
5
parse_all() {
    local STRING=$(sed -n "/$1/s/^.*$2.*$/\1/p") &&
        test "$STRING" && echo "$STRING" ||
        { log_error "parse failed: sed -n \"/$1/$2\""; return 1; }
}


dit is de parse function dat gebruikt wordt. Als ik het goed heb wordt de URL opgeslagen in $STRING, maar als ik dat echo, dan komt er niks uit :(

nu dacht ik eraan of ik niet zoiets kan doen:
code:
1
2
"$DONE" | parse "downloadurl" "url = '\(.*\)';" >> $VARIABLE
echo "$VARIABLE"


Ik snap niet echt goed wat er uberhaupt in deze regel gebeurt.. waar staat "|" voor?

Acties:
  • 0 Henk 'm!

  • Boudewijn
  • Registratie: Februari 2004
  • Niet online

Boudewijn

omdat het kan

Het doorgeven (pipen) van de output van commando 1 naar commando 2.

i3 + moederbord + geheugen kopen?


Acties:
  • 0 Henk 'm!

  • Ortixx
  • Registratie: Mei 2006
  • Laatst online: 19-06-2023
hmm oke nice to know! maar kan ik de output van parse niet opslaan in een variable? want ik kan $STRING niet aanspreken om een of andere reden...

Acties:
  • 0 Henk 'm!

  • blaataaps
  • Registratie: Juli 2001
  • Niet online
Je weet dat er allerlei howto's zijn die stap voor stap (bijna) alles over bash-scripten uitleggen? Random dingen van een forum plukken schiet niet zo op natuurlijk.

Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 15:28

CAPSLOCK2000

zie teletekst pagina 888

Ortixx schreef op woensdag 22 december 2010 @ 15:27:
Ik ben momenteel bezig om wat dingen te automaten op mijn server en ik maak gebruik van plowshare.
code:
1
2
3
4
5
6
7
8
9
10
11
12
     URL=$(curl_with_log -b $COOKIES \
          -F "UPLOAD_IDENTIFIER=$UPLOAD_IDENTIFIER" \
          -F "sessionid=$UPLOAD_IDENTIFIER" \
          -F "file=@$FILE;filename=$(basename_file "$DESTFILE")" \
          -F "message=$DESCRIPTION" \
          -F "toemail=$TOEMAIL" \
          -F "fromemail=$FROMEMAIL" \
          -F "password=$LINK_PASSWORD" \
          -F "trafficurl=$TRAFFIC_URL" \
          -F "multiemail=$MULTIEMAIL" \
          "$DONE" | parse "downloadurl" "url = '\(.*\)';")
     echo "$URL\t$FILE" >> links.txt


algemene patroon:

VARIABELE=$( commando1 | commando2 )

$( ) -> voer de commando's tussen de haakjes uit
| -> geef de invoer van commando1 door aan commando2

This post is warranted for the full amount you paid me for it.


  • Ortixx
  • Registratie: Mei 2006
  • Laatst online: 19-06-2023
CAPSLOCK2000, je bent een ware held! Hartstikke bedankt :D ook nog eens zo logisch :D
Pagina: 1