Sida 1 av 1
Skript för skärmdumpar
Postat: 02 jun 2008, 00:32
av Xappe
Hej!
Slängde ihop ett litet bashskript för att ta skärmdump, skapa thumbnail och ladda upp det på min webserver med scp. Det spottar även ur sig bbcode för att visa dumpen med tumnagel på forum.
Krav: scrot
Kod: Markera allt
#!/bin/bash
scrn="$1"
thumb="${1%.*}-thumb.${1##*.}"
scrot -t20 "$scrn"
scp "$scrn" "$thumb" användarnamn@serveradress:/sökväg/till/webbkatalog/
echo "[url=http://serveradress/$scrn]"
echo "[img]http://serveradress/$thumb[/img]"
echo "[/url]"
rm "$scrn" "$thumb"
Ändra "användarnamn" och "serveradress" (och sökvägen på servern såklart) så det passar din server.
Användning:
Hoppas det kommer till användning för någon iaf.

Tack Konservburk för bidragen!
Re: Skript för skärmdumpar
Postat: 02 jun 2008, 01:03
av Konservburk
Du bör verkligen dubbelfnutta dina variabler, dvs använd "$1" istället för $1. Det är A och O när det gäller skalskript.
Eftersom
scrot kan göra thumbnails på egen hand så kan du skippa imagemagick helt och hållet.
istället för
Kod: Markera allt
scrot $scrn
cp $scrn thumb-$scrn
mogrify -resize 20% thumb-$scrn
Re: Skript för skärmdumpar
Postat: 02 jun 2008, 01:21
av Xappe
Ja, nu har jag fnuttat skriptet i första posten.
I vilka fall skulle mitt skript ovan inte fungera utan fnuttar? Har hittills inte haft några problem med det även fast jag vet att man bör fnutta variabler.
Vad gäller scrot, så visste jag att den kan göra tumnaglar själv. Men om jag låter scrot göra tumnagel, hur får jag då tumnagelfilen som variabel för scp? Scrot lägger ju till -thumb till filnamnet för filändelsen vilket försvårar det hela.
Re: Skript för skärmdumpar
Postat: 02 jun 2008, 01:51
av Konservburk
Xappe skrev:I vilka fall skulle mitt skript ovan inte fungera utan fnuttar? Har hittills inte haft några problem med det även fast jag vet att man bör fnutta variabler.
Det blir problem när variabeln (filnamnet i det här fallet) innehåller tecken som har speciell mening för skalet. Det absolut vanligaste man åker dit på är mellanslag i filnamn, men det är långt ifrån det enda problemet.
Xappe skrev:Vad gäller scrot, så visste jag att den kan göra tumnaglar själv. Men om jag låter scrot göra tumnagel, hur får jag då tumnagelfilen som variabel för scp? Scrot lägger ju till -thumb till filnamnet för filändelsen vilket försvårar det hela.
Det tänkte jag inte på att den gör. Det försvårar ju det hela en aning... ett perfekt tillfälle att lära sig hur man hanterar sådant med andra ord
Kod: Markera allt
set hejsan.png
echo "$1" "${1%.*}-thumb.${1##*.}"
"${1%.*}" expanderar till allt innan sista punkten.
"${1##*.}" expanderar till allt efter sista punkten.
Re: Skript för skärmdumpar
Postat: 02 jun 2008, 01:56
av Xappe
Man får tacka för den lilla lektionen. Det där med reguljära uttryck har jag aldrig riktigt fått nåt grepp om. Har en pdf-bok i ämnet, så jag får nog ta och läsa den snart...

Re: Skript för skärmdumpar
Postat: 02 jun 2008, 02:03
av Konservburk
Det är inte reguljära uttryck, utan något som kallas "Parameter Expansion". Kolla i skalets manualblad om du veta exakt hur det fungerar.
Re: Skript för skärmdumpar
Postat: 02 jun 2008, 02:10
av Xappe
aha, men det liknar reguljära uttryck på nåt vis.
Skriptet uppdaterat i första posten.
Re: Skript för skärmdumpar
Postat: 02 jun 2008, 06:58
av Konservburk
Xappe skrev:Skriptet uppdaterat i första posten.
Jag ser att du råkat göra ett misstag när det gäller fnuttandet...
Detta innebär att "[url=
http://serveradress/" och "]" är fnuttat, men inte $scrn. Borde vara så här istället:
Re: Skript för skärmdumpar
Postat: 02 jun 2008, 07:25
av Konservburk
Sen kan jag också undra varför du ger ett variablenamn till den enkla "$1", men inte till den betydligt mer komplicerade "${1%.*}-thumb.${1##*.}"?
Re: Skript för skärmdumpar
Postat: 02 jun 2008, 13:05
av Xappe
haha, du är då aldrig nöjd.

<edit> uppdaterat första posten igen</edit>