Senaste inläggen från UEX

  • Sed - strömredigerare för filtrering och omvandling av text

    Sed kommandot är som vim ganska knepigt att lära sig men när man får koll på det så kan man underlätta sitt arbete med shell script extremt mycket.

    När man ska manipulera och omvandla texter så är sed ett av de bästa verktygen i Linux. Jag ska försöka använda mig av bra kompatibilitet så att det funkar på så många installationer som möjligt. Därför har jag testat dessa kommandon på asus wrt som har en äldre busybox installation.

    Argument till kommandot

    -e Kör flera editeringar efter varandra. Jag rekommenderar att man kör sed 's/byt/till/; s/byt/till/' fil.txt istället för sed -e 's/byt/till/' -e 's/byt/till/' fil.txt. Blir både kortare och bättre med ; istället för -e.

    -n Stäng av automatisk print till standar ut. Använd sed -n 'p' för att få ut text.

    Kommandon

    För att skicka text till sed (standard input) så finns det olika sätt att göra detta på. Här ser du fyra exempel på detta.

    < fil.txt sed -n '2,3p' sed -n '2,3p' fil.txt cat fil.txt | sed -n '2,3p' printf 'Lite text' | sed -n 's/text/sed/p'

    Printa rad 4 till 6.

    sed -n '4,6p' fil.txt

    Radera rad 2 till 4 och printa sedan.

    sed -n '2,4d;p' fil.txt

    Tre exempel på att byta ut ordet byt till ordet till fast bara på rad 10 till 13. Det första exemplet byter ut det i texten och sedan printar hela texten medans det andra bara printar det som lyckats blivit utbytt. /p är en specialare som bara printar det den matchar på när man byter ut saker eller söker efter dem. Tredje exemplet gör samma som första men bryr sig ej om det är exakt match på stora och små bokstäver.

    sed -n '10,13s/byt/till/;p' fil.txt sed -n '10,13s/byt/till/p' fil.txt sed -n '10,13s/byt/till/I;p' fil2.txt

    Detta fungerar som grep att man letar efter hitta och sedan printar det som matchar. Det andra alternativet gör som den första men lägger till 10 rader efter matchen. Det tredje alternativet begränsar sökningen från rad 4 till 10. Det fjärde exemplet tar rader från försa <p> taggen till sista </p> taggen och sedan söker efter rader med <b> som den sedan tar bort och printar resten. Så en begränsning med {} kan sättas upp med både 4,10 eller ord och taggar.

    sed -n '/hitta/p' fil.txt sed -n '/hitta/,+10p' fil.txt sed -n '4,10{/hitta/p}' fil.txt sed -n '/<p>/,/<\/p>/{/<b>/d;p}' fil.txt

    d är använbart i många fall. Första exemplet är för att ta bort allt efter en match. När man använder ! så blir det tvärt om. Andra exemplet tar bort allt före en match.

    sed -n '/hitta/,$d;p' fil.txt sed -n '/hitta/,$!d;p' fil.txt

    q är riktigt bra om du vill sluta läsa in data. Då kan du genom flera q leta efter ett ställe och sedan ett annat och printa resten. Observera att om du vill ha med sista raden som den stannar på så måste du lägga in p före q.

    sed -n '/hitta/q;/hitta2/q;p' fil.txt sed -n '/hitta/q;p;/hitta2/q' fil.txt

    Här har vi några exempel på saker som skrivs ut 1. Första raden. 2. Femte raden. 3. Sista raden. 4. Sista radens nummer. 5. Sista radens nummer och innehåll. 6. Alla radnummer och innehåll.

    sed -n '1p' fil.txt sed -n '5p' fil.txt sed -n '$p' fil.txt sed -n '$=' fil.txt sed -n '$=p' fil.txt sed -n '=p' fil.txt

    När man har med n inom ' ' så hoppar man över en rad för varje rad. Detta betyder att varannan rad skriver ut radnumret. Den andra exemplet skriver ut varannan rad. Du kan hoppa över 3 rader för varje rad med sista exemplet.

    sed -n '=;n' fil.txt sed -n 'n;p' fil.txt sed -n 'n;n;n;p' fil.txt

    Det finns fall där man måste använda -e istället för ;. Detta när man lägger till text ovanför, under eller byter ut en rad. -ne behövs bara på första. sedan kan du fortsätta som vanligt. Anledningen till detta är att man kan inte lägga några ; tecken efter texten som man lägger till för då läggs den bara till som text istället för att köra nästa kommando.

    sed -ne '/3/aLite ny text under rad 3' -e 'p' fil2.txt sed -ne '/3/cLite ny text istället för rad 3' -e 'p' fil2.txt sed -ne '/3/iLite ny text ovanför rad 3' -e 'p' fil2.txt

    För att förstå N/P/D så är det bäst att kolla på video 2 från 7:44. N lägger in nästa till patten space och P printar första från patten space samt D som tar bort första från patten space.

    För att förstå script, -f och # så är det bäst att kolla video 3 från 4:45.

    För att förstå holding space och x/h/H/g/G så är det bäst att titta på video 4 från 5:37.

    För att förstå holding space och :/b/t så är det bäst att titta på video 4 från 13:05.

    Filmer och sed editorn

    Dessa måste vara de bästa filmerna om man skall lära sig sed.

    Understanding how sed works 1/4

    Understanding how sed works 2/4

    Understanding how sed works 3/4

    Understanding how sed works 4/4

    Tips

    Ibland så kan det vara bra att använda andra avskiljare än / i sed för att det krockar. Ett tecken som jag tycker är bra är | (pipe). Om man behöver använda variabler så kan man lösa det som i andra exemplet.

    sed -n '10,13s|byt|till|;p' fil.txt sed -n "10,13s|$byt|$till|;p" fil.txt

    Man kan göra så många saker med sed och det går inte att ta upp allt. Men efter du har läst detta och även sett på filmerna så kommer du förstå sed mycket bättre än innan.

    läs mer
  • Windowsfx (linuxfx)

    Har du funderat på att gå över till opensource för att du är trött på Windows som operativsystem? Det kan vara svårt att börja med en Linux distribution som är avancerad och tar lång tid att lära sig.

    Något som kan vara värt att testa är Linuxfx som gör din migrering till Linux lättare. När du sedan har fått upp smaken så kan du testa en lite svårare variant av Linux. Lär dig mer om Linux via vår länklista.

    Här kan man ladda ner Linuxfx.

    läs mer
  • Bashism

    Visst är det härligt att automatisera saker på din dator? Shellskript finns i många former men när vi pratar Linux så brukar folk referera till bash-skalet. Problemet med bash är att det inte följer POSIX-standarden och har massor med extra funktioner som inte stöds i andra eller gamla skal och detta kallar man för bashism. Exempel på skal som är snabba är tex dash och ash.

    När man skriver skript så vill man gärna att det är portabelt så att man kan flytta det mellan olika servrar eller datorer. Jag strävar alltid att göra saker så portabelt som möjligt och då vill man följa POSIX rakt ut.

    Som tur så finns det ett verktyg som heter checkbashisms och går att installera i de flesta Linux distributioner. Använd det genom att köra

    checkbashisms -f -p <ditt skript>

    Så kommer den berätta för dig vad som inte följer POSIX i ditt script. Notera att du ska alltid använda #!/bin/sh i toppen på skriptet.

    Kolla här om du vill läsa mer om bashism.

    läs mer
  • Arbeta via proxy i någon annans nätverk Tunneln

    Det första man måste göra är att sätta upp denna tunnel via ssh. Inget annat speciellt behövs. Observera att detta bara funkar för TCP och ej UDP.

    Du öppnar en SSH-anslutning till en fjärrserver. När man öppnar anslutningen kommer din SSH-klient också att öppna en lokal TCP-port, endast tillgänglig för din dator. I exemplet nedan använder jag lokal TCP-port: 1337. Du konfigurerar din webbläsare Firefox för att använda den lokala proxy istället för att direkt gå ut på internet. Fjärr SSH-servern accepterar din SSH-anslutning och fungerar som en utgående proxy / vpn (SOCKS5).

    Kör följande kommando i din terminal för att aktivera tunneln. När du kör detta kommer ssh att ligga i förgrunden tills du gör CTRL + C för att avbryta det.

    ssh -C -D 1337 -N <användare>@<server>

    Om du föredrar att hålla den igång i bakgrunden, lägg till -f för att forka den till ett bakgrundskommando.

    ssh -C -D 1337 -f -N -p <port> <användare>@<server>

    Du kan se att den funkar genom att köra netstat -nap | grep 1337. För att stänga av så kan du köra kill på process nummer som du får genom att köra ps | grep [1]337.

    Vad detta kommando gör;

    -C: Sparar bandbredd genom att komprimera data i tunneln. -D 1337: öppna en SOCKS-proxy på din lokala port: 1337. Prova ett annat portnummer om porten är upptagen. Om du vill öppna flera SOCKS-proxyer till flera slutpunkter väljer du en annan port för var och en. -f: Kör processen för tunneln i bakgrunden. -N: kör inte fjärrkommandon, användbart för att bara vidarebefordra portar. -p: Om din ssh-server lyssnar på en annan port än 22. -q: tyst läge, skriv inte ut något i terminalen. <din server>: En fjärr SSH-server du har tillgång till Webbklienten

    För att använda proxyn så behöver du en webbläsare. Den bästa webbläsaren för detta är Firefox oberoende av vilket operativsystem du har. Börja med att gå till Inställningar -> Nätverksinställningar -> Inställningar... i Firefox.

    Väl sedan Manuell proxykonfiguration och fyll i SOCKS-värd (127.0.0.1) och port (1337). Bra att bocka i SOCKS v5 samt Proxy DNS när du använder SOCKS v5.

    Felsökning

    Lite vanliga fel som kan uppstå. Du kan alltid felsöka med curl för att se hur det funkar.

    curl --socks5 127.0.0.1:1337 https://www.google.com

    Om det inte funkar så kan det vara bra at kolla så att AllowTcpForwarding / ssh_forwarding är påslaget i din router / server / WSL.

    channel 2: open failed: administratively prohibited:

    Om du får "The connection was reset" i Firefox så kan du ha missat att SOCKS-värd ska vara satt och inte HTTP Proxy / HTTPS Proxy.

    läs mer
  • Virsh

    Ett smidigt cli till qemu. Alla kommandon skrivs efter man har kört virsh

    Anslut till qemu

    connect qemu:///system

    Lista alla instanser

    list --all

    Starta en instans

    start <namn>

    Anslut till consolen på en instans. För att komma ur den så är det CTRL+5 (Svensk tangentbord)

    console <namn>

    läs mer

Nyheter

God of War Ragnarök ingår i månadens PS Plus2025-01-24 12:11
Plus en flock spel till.
Nintendo Switch Online utökas med tre Super Nintendo-klassiker2025-01-24 11:47

Under de senaste veckorna har vi kunnat rapportera om hur Nintendo släppt ett stort antal spels soundtrack till sin app Nintendo Music. De har lyckligtvis inte glömt retrospelen till sin Switch Online-tjänst och kontinuerligt fyllt på senaste tiden, och nu har de lagt till tre nya.

Den här gången är det två ganska obskyra titlar (tidigare aldrig släppta i Europa) vi kan se fram emot, tillsammans med en Super Nintendo-konvertering av en Neo Geo-klassiker i Fatal Fury-serien. Titlarna ifråga är:


  • Fatal Fury 2

  • Super Ninja Boy

  • Sutte Hakkun



<social>https://bsky.app/profile/nintendousa.bsky.social/post/3lghabo66j224</social>

<video>

<bild>Ska du passa på att testa något nytt?</bild>


NBA undersöker fortfarande skapandet av en ny europeisk liga, vilket hotar EuroLeague2025-01-24 11:42

NBA-kommissionären Adam Silvers besök i Europa för NBA Paris Games mellan San Antonio Spurs och Indiana Pacers var det perfekta tillfället för europeiska medier att veta mer om utsikterna till en europeisk NBA League, något som har diskuterats ett tag och som först tillkännagavs i de olympiska spelen i Paris 2024 förra året.

Silver bekräftade att NBA och FIBA (International Basketball Federation) fortfarande är i samtal. Inga nya avtal har gjorts, eftersom de först vill träffa alla potentiella lag, som för närvarande spelar i EuroLeague, en tävling som NBA sannolikt skulle ersätta om projektet går igenom.

NBA-kommissionären anser att EuroLeague inte maximerar deras kommersiella möjligheter. "Medan Europa fortsätter att utveckla några av de allra bästa spelarna i världen, är många av våra senaste MVP:er naturligtvis europeiska, vi tror att de kommersiella möjligheterna inte har hållit jämna steg med spelets tillväxt", sa Silver i Paris, enligt ESPN.

Ett nytt, fristående europeiskt NBA är på gång



Hur skulle NBA i Europa se ut? Det skulle inte vara en expansion, utan en ny, oberoende liga som spelades mellan redan etablerade europeiska lag och kanske i framtiden nya franchises som skapades för tillfället.

Silver förklarade att NBA redan har fem ligor: NBA, WBNA, Basketballl African League, G League och 2K video game league. Men för att kunna göra det behöver Silver godkännande från de 30 nuvarande NBA-lagen, och alla är inte övertygade om projektets genomförbarhet, eftersom inte alla av de fem NBA-ligorna har varit lönsamma.

Ett beslut kan komma att fattas innan ett styrelsemöte i NBA i slutet av mars. Samtidigt är Silver fortfarande optimistisk: "Vi tittar mycket noga för att se om det finns en möjlighet att professionalisera spelet till en annan nivå här, för att skapa en större kommersiell möjlighet".

<bild></bild>


Det blir en fjärde säsong av The White Lotus2025-01-24 11:40

The White Lotus har redan förnyats av HBO inför en fjärde säsong. Mike Whites dramakomedi blev en omedelbar succé när den först hade premiär och visar hur ultrarika människor får sin ultimata semester förvandlad till en mardröm på grund av att en eller ett par personer dör beroende på säsong.

Säsong 3 av The White Lotus är inte ens ute än och har premiär i mitten av nästa månad. Med tanke på att serien har vunnit 15 Emmys hittills är det dock ingen överraskning att HBO vill fortsätta framgångståget.

Variety rapporterar att det inte finns några fasta planer på var den fjärde säsongen ska utspelas, men idéer har tydligen presenterats. Det är troligt att vi kommer få se ännu en varm, kanske exotisk plats, med massor av vackra landskap som distraherar oss från de hemska människorna allt kretsar kring.

<bild></bild>


Wemby leder Spurs till en enorm seger med 140-110 inför en fängslad publik i Paris2025-01-24 11:03

Victor Wembanyama fick den parisiska publiken att bli galna i en fantastisk 140-110-seger för San Antonio Spurs över Indiana Pacers, i den första av de två NBA-matcherna som kommer att äga rum i Paris den här veckan. Wemby, 21-åringen, som i somras vann en silvermedalj i Paris, är en lokal stjärna, togs emot när han besökte sitt tidigare gym i Nanterre, en förort till Paris när han debuterade 2019.

I torsdagens match besegrade Spurs (20-22) Indiana Pacers (24-20) med 140-110, där Wembanyama gjorde 30 poäng, 11 returer, 6 assists och 5 blockar. Det var en seger mot alla odds, eftersom Indiana hade vunnit åtta av de nio senaste matcherna, medan San Antonio bara hade vunnit en av de åtta senaste matcherna, men Spurs visade överlägsenhet på alla områden, som ett stort övertag på returtagningen, 57-31.

<social>https://x.com/spurs/status/1882546838978601127</social>

Tack vare Wembanyamas närvaro är Spurs det mest följda NBA-laget i Frankrike, även om de ligger så långt ner i tabellen (12:e av 15:e i West Conference). Det var logiskt att de reste till Paris, som en del av det årliga spelet som hölls i Paris, ett sätt att popularisera tävlingen utanför USA.

Gårdagens match var mer än bara en vanlig säsongsmatch, det var en händelse för staden. Den största fotbollsklubben, Paris Saint-Germain, lanserade en kollektion av tröjor och produkter i begränsad upplaga som blandade PSG:s och Spurs logotyper.

Spurs-spelare gick på PSG-Manchester City-matchen på onsdagen (en stor seger för Paris), och PSG-spelare som Gonçalo Ramos, Achraf Hakimi, Presnel Kimpembe och Ousmane Dembélé gick också på NBA-matchen (tillsammans med andra personligheter som NBA-legenden Pau Gasol och Tony Parker, fotbollsspelarna Rodri och Pedri eller skådespelarna Omar Sy och François Civil.

På lördag kommer också en andra NBA-match att äga rum på Accor Arena i Paris, den här gången med Indiana Pacers som lokalt lag.

<bild></bild>


Rebellion visar de första 20 minuterna från Sniper Elite: Resistance2025-01-24 10:55
Verkar bli mer av samma, på gott och ont.
Lost Records: Bloom and Rage - Tape 2 försenas en månad2025-01-24 10:53

Don't Nod flyttar fram Lost Records: Bloom and Rage Tape 2 från det planerade släppet den 18 mars (exakt en månad efter Tape 1) till den 15 april. Tape 1 kommer dock fortfarande som planerat den 18 februari.

Anledningen till förseningen är att ge teamet "the necessary time to refine the experience, address more bugs, and enhance the storytelling for a truly immersive continuation of the journey".

{Lost Records: Bloom and Rage} är uppdelat i två episoder och handlar om gymnasievännerna Swann, Nora, Autumn och Kat som ger sig ut på en "magical summer of self-discovery". Men spelet utspelar sig också 27 år senare, när samma vänner, efter årtionden utan kontakt, återförenas för att konfrontera en djup hemlighet som de lovat varandra att aldrig prata om igen.

<bild>Vi kommer givetvis recensera.</bild>


Doom: The Dark Ages helvetiska systemkrav är här2025-01-24 10:02
Medeltidsmörsande kräver en hel del.
Fragzone-fredag – Hur mycket får ett spel kosta?2025-01-24 09:00
Pengar är inga problem! (Eller...?)
Art of Rally-utvecklarna utannonserar offroad-spelet Over the Hill2025-01-24 07:54
Terrängkörning av det lite mer rofyllda slaget.