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.

    11 aug. 2022 07:40lä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.

    30 okt. 2020 14:12lä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.

    17 sep. 2020 11:47lä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.

    21 aug. 2020 11:29lä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>

    23 juli 2020 11:02läs mer

Nyheter

Snabbkollen – Spelar du mer eller mindre under sommarens ledighet?2025-07-09 10:00
Sol eller spel? Sol och spel? Hur spelar du i sommar?
Ryssland inleder den största drönarattacken mot Ukraina sedan krigets början2025-07-09 09:59

De senaste nyheterna om Ryssland och Ukraina. Ryssland har genomfört sin mest omfattande drönaroffensiv mot Ukraina hittills, bara timmar efter att USA:s president Donald Trump anklagade Rysslands president Vladimir Putin för att ha fått fredsansträngningarna att spåra ur.

"Det här är en demonstrativ attack, och den kommer vid en tidpunkt då det har gjorts så många försök att uppnå fred och vapenvila, men Ryssland avvisar allt", skriver Ukrainas president Volodymyr Zelenskyj på Telegram. "Alla som vill ha fred måste agera."

Vågen av obemannade flygplan och missiler, som främst riktades mot Lutsk och andra regioner, markerade en kraftig upptrappning av den pågående konflikten och utlöste nödinsatser över hela landet och till och med i grannlandet Polen. Du kan lära dig mer information i inlägget nedan.

<social>https://x.com/ZelenskyyUa/status/1942835716905382384</social>


Naughty Dog uppdaterar The Last of Us: Part II Remastered med nytt spelläge2025-07-09 09:36

Visste du att det finns en version av Gudfadern-trilogin där alla scener har klippts om i kronologisk ordning? Den heter The Godfather Epic och är godkänd av Coppola själv. Där börjar allt med begravningen av Vito Andolinis far, långt innan han blev Vito Corleone.

Vad har det här med något att göra? Jo, ungefär samma effekt vill Sony och Naughty Dog uppnå med det nya spelläget Chronological Game Mode i {The Last of Us: Part II Remastered}. Genom att spela händelserna i tidsordning får man en helt ny förståelse för berättelsen samt huvudpersonerna Abby och Ellie. Jonathan Dornbush, editorial content manager hos Naughty Dog, förklarar:

"Through the new Chronological mode, we believe players will gain even deeper insight into Part II's narrative. Players will be able to see how Ellie being gifted a guitar flows so neatly into her learning to play, for example, while the journey through Seattle will showcase the fascinating parallels between Ellie and Abby's crisscrossing journeys. You'll see just how close they come into running into each other, how their actions impact each other, and more."

Förutom detta nya läge innehåller uppdateringen även nya troféer samt exklusiva skins där bröderna Joel och Tommy är klädda som Nathan och Sam Drake.

Den här gratistillägget är en del av Naughty Dogs 40-årsjubileum, men det är knappast en slump att det släpps så nära inpå slutet av säsong två av HBO Max-serien. Uppdateringen finns tillgänglig till både PC och Playstation 5.

<bild>En ny syn på samma story.</bild>


PSG och Real Madrid kommer båda att ha två stora frånvarande i försvaret ikväll2025-07-09 09:22

Semifinalmatchen i klubblags-VM mellan Paris Saint-Germain och Real Madrid ikväll kommer att ha tre signifikanta avsteg för båda lagen i försvaret: varken Lucas Hernández och William Pacho, för det franska laget, eller Dean Huijsen för den spanska klubben. Alla tre kommer att missa kvällens match på grund av samma anledning: att se ett direkt rött kort i den förra matchen.

Det är ett hårt slag för båda lagen, som åtminstone kan vara nöjda med att det andra laget lider av en liknande frånvaro, vilket gör saker och ting lika. Det är nu upp till tränarna Xabi Alonso och Luis Enrique att lista ut hur man ska hantera den luckan i laget... även om det är stor skillnad.

Trots att alla tre spelare blev avstängda av samma anledning, efter att ha fått rött kort, har Huijsen bara fått ett straff i en match. Pacho och Hernández har dock stängts av i två matcher, vilket innebär att om PSG vinner ikväll skulle de också missa finalen mot Chelsea på söndag. Ett beslut som få kan förstå...

<bild></bild>


Agatha Christies skugga vilar över svampmord, mediehysteri2025-07-09 09:12

En hemlagad oxfilé med tändhattar. Tre familjemedlemmar döda. En fjärde överlevande. En mediestorm, ett spektakel i rättssalen och nu en anstormning av filmatiseringar. Fallet med Erin Patterson, som nyligen dömdes i Australien för mordet på sina tidigare svärföräldrar, är bortom rubrikerna. Det håller på att bli något helt annat: ett kulturellt fenomen som på ett nästan kusligt sätt speglar de skruvade berättelser som en gång skrevs av Agatha Christie.

I Christie's universum fanns det inget farligare än en till synes trevlig middag. I A Murder is Announced anländer gästerna till vad de tror kommer att bli en kväll med harmlös underhållning. I Sparkling Cyanide maskerar champagneflöjter döden. I Crooked House kvävs familjebanden av giftig tillgivenhet. Berättelsen om Erin Patterson verkar följa samma plan, en berättelse där gästfrihet blir ett vapen och förtrogenhet föder dödlig tillit.

Det är därför ingen överraskning att utgivare, producenter och streamingplattformar har kastat sig över fallet som gamar över ett nytt mysterium. ABC:s Toxic, som redan är under utveckling, lovar en nyanserad återberättelse av händelserna, medan Death Cap, en ny dokumentär för Stan, kommer att ge tittarna en exklusiv inblick i utredningen. Dussintals podcasts packar fortfarande upp varje ögonblick i rättssalen med kriminalteknisk precision, och fackbokserbjudanden flyger av hyllorna. Det är en frenesi för true crime-berättare, som alla dras till berättelsens potenta cocktail av sorg, svek och skräck i hemmet.

<social>https://x.com/Reuters/status/1942313923249664408</social>

Men det som gör det här fallet unikt fängslande är inte bara den chockerande metoden eller den tragiska utgången, det är hur det ekar av Christies mest bestående teman. Bakgrunden är anspråkslös: ett anspråkslöst kök på landsbygden i Victoria, Australien. Motivet är fortfarande höljt i dunkel. Den anklagade kocken, Erin Patterson, hävdar sin oskuld. Ändå ligger skräcken i banaliteten, den nästan arketypiska karaktären i handlingen. Det kunde ha hänt var som helst. Det, skulle Christie hävda, är just det som gör det så skrämmande.

I hjärtat av många av Christies romaner ligger en enkel fråga: hur väl känner vi egentligen de människor vi delar våra hem, våra måltider, våra liv med? I denna verkliga tragedi genljuder den frågan alltför högt. Offren var familjemedlemmar. Miljön var en lunchbjudning. Mördaren var, enligt domen, någon som en gång suttit vid samma bord som dem, inte olikt hur Christie brukade sätta alla sina misstänkta tillsammans, bara för att en av dem långsamt skulle avslöja sin hand.

De kulturella efterskalven har varit snabba och omfattande. Rykten om rollbesättning florerar redan på nätet, med användare av sociala medier som föreställer sig att Toni Collette eller Jessica Gunning kliver in i rollen som Patterson. Vissa menar att fallet kan bli nästa The Staircase, en true crime-dramatisering som suddade ut gränserna mellan fakta och fiktion. Andra oroar sig för att tragedin alltför snabbt omvandlas till innehåll.

<social>https://x.com/Reuters/status/1942199419241173338</social>

Ändå går det inte att förneka den Christie-liknande dragningskraften i berättelsen. Till och med titeln på en kommande bok, Recipe for Murder, verkar vara hämtad direkt från deckardrottningens spelbok. Denna fascination för dödlig mat, för hemtamhet som gått snett, är inget nytt. Men sällan har det verkliga livet speglat fiktionen med så precisa och kusliga detaljer.

Helen Garner, Australiens egen mästare på litterär facklitteratur, har setts observera rättegången personligen, vilket tyder på att ett stort litterärt gensvar kan vara på gång, vilket påminner om hennes skrämmande krönika This House of Grief. Huruvida hon, eller någon annan författare, kommer att skriva den definitiva Patterson-berättelsen är fortfarande oklart. Vad som är tydligt är att den här historien har tagit sig in i den kulturella fantasin på ett sätt som få moderna brott gör.

Agatha Christie sa en gång: "Det är helt oviktigt. Det är därför det är så intressant." Hon syftade på den vanliga, den tråkiga ytan på tingen, under vilken alla möjliga hemligheter kokar. The Mushroom Murders är på många sätt ett perfekt förverkligande av den idén. Vanligt hem. Vanlig måltid. Extraordinär skräck. Och precis så tittar världen på.

<bild>Erin Patterson</bild>


Tadej Pogačar vinner sin 100:e seger och delar förstaplatsen med Mathieu van der Poel i Tour de France2025-07-09 09:11

Tadej Pogačar, slovensk cyklist för UAE Team Emirates XRG, fortsätter att skriva historia genom att vinna sin 100:e professionella seger, sin 18:e i Tour de France, en tävling som han redan har vunnit tre gånger (2020, 2021 och 2024). Vid 26 års ålder skriver han sitt namn i historieböckerna och ansluter sig till en lista över endast 25 cyklister i historien som har vunnit över 100 segrar i karriären, en rankning som leds av Eddy Merckx med 279.

Pogacar uppnådde det på etapp 4 av Touren, vilket på grund av omständigheterna i tävlingen gjorde att många såg Mathieu van der Poel som favorit. Men i slutspurten sprang Pogacar om alla rivaler, inklusive Van der Poel, och tog hem segern och delade den allmänna klassificeringen med Mathieu Van der Poel på 16 timmar 46 minuter och 0 sekunder, följt av den danska cyklisten Jonas Vingegaard, åtta sekunder bakom.

Pogacar leder också 2025, med 12 segrar, en mer än belgaren Tim Merlier, inklusive den prestigefyllda Flèche Wallone.

<bild></bild>


Så ja! 20 minuter Ghost of Yōtei på torsdag2025-07-09 08:02
Äger rum 300 år efter Tsushima.
The Last of Us 2-storyn stuvas om – spela i kronologisk ordning2025-07-09 05:51
Snarare än ickelinjärt.
9 maffiga minuter från Mafia: The Old Country2025-07-08 15:56
En månad till release.
FZ High Score – Tippa på fyra (!) spel, med deadlines i veckan2025-07-08 14:04
Speltorka? Knappast!