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

Räkna med att det fortsätter släppas fysiska spel till Xbox i framtiden2024-02-21 07:05

En av de största sakerna vi fick veta i samband med Microsofts strid mot FTC om Activision Blizzard-uppköpet förra året var att företaget planerar att lansera en skivlös Xbox Series X under andra halvåret 2024. Lägg därtill att Microsoft tidigare i år stängde avdelningar som arbetade med just fysiska spel och det är ganska förståeligt att många fruktade att Microsoft skulle bli helt digitala. Lyckligtvis finns det ingen anledning att bli orolig ännu.

Stephen Totilo hade nöjet att prata med Phil Spencer - chefen för Microsoft Gaming - under Dice Awards förra helgen, och fick höra att Xbox inte planerar att lämna fysiska medier bakom sig inom den närmsta framtiden. Även om de flesta inköp sker digitalt idag, säger Spencer att deras strategi "does not hinge on people moving all-digital, and getting rid of physical, that's not a strategic thing for us."

Totilo tog också tillfället i akt att fråga om möjligheten att släppa en ny skivlös Xbox Series-konsol i framtiden, och även om Spencers svar var ganska vagt, så låter det definitivt som att den nya varianten av Xbox Series X inte kommer ha en skivenhet:

We ship games physically and digitally, and we're really just following what the customers are doing. And I think our job in running Xbox is to deliver on the things that a majority of the customers want. And right now, a majority of our customers are buying games digitally (...) Gaming consoles themselves have kind of become the last consumer electronic device that has a drive, and this is a real issue, just in terms of the number of manufacturers that are actually building drives and the cost associated with those. And when you think about cogs that we're going to go put in a console—and as you have fewer suppliers and fewer buyers—the cost of the drive does have an impact."

Är det rimligt att en liten del av konsolvärlden håller kvar vid skivor som gör konsolerna större och dyrare, medan alla andra delar av spelvärlden lämnat fysiskt lagringsmedia bakom sig?
<bild>Xbox Series X-spelarna kommer få fortsätta betala för skivenheter, trots att en klar majoritet inte använder dem.</bild>


Rykte: Nintendo utannonserar något Gamecube-relaterat idag2024-02-21 06:31

Senare idag (21 februari) klockan 15:00 kommer Nintendo leverera en ny Nintendo Direct-stream, dedikerad till tredje part. Detta innebär att vi inte bör förvänta oss några nyheter om deras egna titlar och än mindre om kommande hårdvara.

Trots detta antyder nu en ganska välkänd Nintendo-insider vid namn Pyoro att något Gamecube-relaterat dyker upp under streamen. Gamecube gick under kodnamnet Project Dolphin när den var i produktion, och Pyoro använder både delfin-emojis och skriver om djuret, vilket indikerar att det har betydelse. Den mest uppenbara gissningen skulle vara att Nintendo är på väg att lägga till Gamecube i prenumerationstjänsten Switch Online, men å andra sidan är detta en Partner Showcase och inte rätt plats att prata om nya Switch-funktioner.

Andra kvalificerade gissningar skulle vara att Gamecube-klassiker från tredje part (vi skulle inte ha något emot {Eternal Darkness: Sanity's Requiem}) kommer remastras till Switch. Detta skulle vara ganska logiskt, eftersom Switch lär vara tunnsådd på spel i slutet av året om ryktena om en försening av Switch 2 till första halvåret 2025 visar sig vara sanna.

<social>https://twitter.com/Pyoro_X/status/1759586391674241353</social>
<bild>Vad tror du att det här handlar om?</bild>


Kolla in Bordelands-filmpostern och en kort teaser2024-02-21 06:06

Igår fick vi de två första bilderna från den kommande Borderlands-filmen, som gav oss en bättre titt på huvudrollsinnehavarna. Men Lionsgate hade större planer än så, och ett par timmar senare släppte de även den officiella filmaffischen samt en väldigt kort teaser, samtidigt som de berättade att en första trailer kommer senare idag (onsdag).

Vi kommer självklart att visa er trailern så snart den släpps, men tills dess kan ni kolla in teasern via X samt postern nedan. Borderlands har biopremiär den 9 augusti.

<social>https://twitter.com/BorderlandsFilm/status/1760005228722856208</social>
<bild>Har de fått till looken, tycker du?</bild>


Elden Ring: Shadow of the Erdtree-gameplay visas upp i eftermiddag2024-02-21 05:33

Vi har knappt hört något officiellt om {Elden Rings} Shadow of the Erdtree-expansion sedan den utannonserades i februari förra året, men spekulationerna och ryktena har kompenserat genom att översvämma internet. Ytterst få av dem har varit substantiella eller trovärdiga, men det har förändrats de senaste veckorna. Flera saker har indikerat att Shadow of the Erdtree är mycket nära lansering, och det verkar stämma.

FromSoftware bekräftar att Elden Ring: Shadow of the Erdtree får en gameplay-trailer klockan 16:00 den 21 februari. Det är alltså idag! Trailern är tre minuter lång, vilket är ganska mycket. Betyder det att den slutar med ett släppdatum? Vi är villiga att satsa en hel del pengar på att så blir fallet, och tror även att det sker tidigare än många nog tror.

Vad hoppas du få se i gameplay-trailern, och när tror du att expansionen har premiär?

<social>https://twitter.com/ELDENRING/status/1760076880764449173</social>
<bild>I eftermiddag är det alltså dags...</bild>


Forza Horizon 5 har nu över 37 miljoner förare2024-02-21 04:33

{Forza Horizon 5} släpptes i november 2021 och nästan två år senare, i oktober 2023, nådde det 34 miljoner spelare. Nu har spelet nått 37 miljoner spelare, en ökning med hela tre miljoner på ungefär fyra månader. Det verkar alltså som att tillströmningen av förare till Forza Horizon 5 fortfarande är enorm.

Sedan lanseringen har Playground Games släppt massor av nytt innehåll till sin racingtitel, däribland nya funktioner och nya bilar, inklusive två kärror inspirerade av den nya Barbie-filmen. Två expansioner har också släppts, Hot Wheels och Rally Adventure.

Det är oklart om det finns något nytt Forza Horizon-innehåll i pipeline, eftersom Playground Games för närvarande arbetar på ett nytt {Fable}, vilket ryktas släppas 2025 (vilket till stor del dock sköts av ett annat team).<bild>När spelet släpptes till PC och Xbox i slutet av 2021 nådde det tio miljoner spelare redan under sin första vecka.</bild>


Respawns kommande Star Wars-FPS inspireras av Dark Forces-spelen2024-02-21 03:07
Och utvecklas i Unreal Engine 5.
Första Elden Ring: Shadow of the Erdtree-trailern kommer i dag!2024-02-21 02:47
Det händer!
Madame Web Star Dakota Johnson Might Watch the Highly Criticized Movie "Someday"2024-02-21 01:13
Dakota Johnson says she’ll watch Madame Web “someday,” but isn’t in a rush.
Aquaman 2 Streaming Release Date Announced as There's Finally Has Good News For DCEU2024-02-21 00:59
Aquaman and the Lost Kingdom finally has something to celebrate as the film ends its theatrical run and heads straight to streaming on Max.
Saltburn's Barry Keoghan Teams Up with 'Chernobyl' Director for Saddam Hussein Drama2024-02-21 00:52
Saltburn's Barry Keoghan and Chernobyl's Johan Renck partner for Amo Saddam film.
Stephen King Shares Confusion Over 'Salem's Lot Release Delays: "Who Knows? I Just Write the F--king Things"2024-02-21 00:32
Stephen King is seemingly just as frustrated as everyone else over Warner Bros. inabliity to give the new 'Salem's Lot movie a release date.
Repo Man 2 Director Shares Details on the Sequel: "Nothing Has Changed"2024-02-20 23:51
Repo Man 2: The Wages of Beer Alex Cox revealed the plot details of the sequel.
Hurra, nu kan du dö permanent i Assassin's Creed Mirage2024-02-20 18:39
Skulle ha kommit tidigare, men nu är döden äntligen här.
Spår av ny Tomb Raider-remaster finns i aktuella trilogin2024-02-20 17:27
Tomb Raider: The Last Revelation kommer tillbaka?
PS5 Pro kommer i år, spår branschfolk2024-02-20 16:02
Kan öka PS5-intresset när folk gör sig redo för GTA VI.