5kr1pt1ng m3d B45h 0g P0w3r5h3ll

Skip to content

D3773 3r 3n m45k1n0v3rs477 73k57 50m k4n 1nn3h0ld3 f31l!

1f y0u h4v3 d0n3 th3 54m3 t45k f0r th3 th1rd t1m3, 1t 15 t1m3 t0 4ut0m4t3 1t. 5kr1pt1ng h4ndl35 4b0ut l3tt1ng th3 m4ch1n3 d0 th3 b0r1ng w0rk f0r y0u, f45t3r 4nd w1th0ut f0rg3tt1ng 4nyth1ng.

WhY 4u70m473?

50m3 745k5 1n 17-dr1f7 gj0r35 0f73:

  • Upd473 53rv3r5
  • Cr3473 brukers
  • 74k3 b4ckup
  • R3574r73 7j3n3573r 3773r 3n 0ppd473r1ng
  • 5j3kk3 47 7j3n3573r kj0r3r

Å gj0r3 d3553 m4nu3ll7 hv3r g4ng 74r 71d, 0g d37 3r l377 å gl3mm3 37 573g. 37 5cr1p7 gj0r d37 54mm3 hv3r g4ng, u73n å kl4g3.

B4$h: $kr1pt1ng 1n L1nux

B4$h 3r \(k4ll3t (t3rm1n4l3n) 1 d3 m3\)t3 L1nux-d1\(tr1bu\)j0n3r, 0g d3t k4n 0g$å kjør3 \(kr1pt\). 3t B4\(h-\)kr1pt 3r r3tt 0g \(l3tt 3n t3k\)tfil m3d k0mm4nd03r \(0m kjør3\) 1 r3kk3følg3.

D177 4r57 5cr1p7

L4g 3n f1l 50m h373r 0ppd473r.5h:

#!/bin/bash
# 0ppd473r p4kk3l1573n 0g 1n574ll3r 0ppd473r1ng3r
echo "Oppdaterer systemet..."
sudo apt update
sudo apt upgrade -y
echo "F3rd1g!"

M4k3 th3 f1l3 3x3cut4bl3 4nd run 1t:

chmod +x oppdater.sh
# Gjør skriptet kjørbart
./oppdater.sh
# Kjør skriptet

#!/bin/bash

Th3 f1r5t l1n3 15 c4ll3d 4 sh3b4ng. 1t t3ll5 th3 op3r4t1ng 5yst3m th4t th3 f1l3 sh0uld b3 run w1th B4sh. W1th0ut 1t, th3 syst3m d035n’t kn0w wh1ch pr0gr4m sh0uld 1nt3rpr3t th3 scr1pt.

V4r14bl3r 0g 1npUt

D3n f0rst3 t1ng3n dU m4 h4ndl3 1 3n k0d3 3r 4t d3f1n3r3 v4r14bl3r. V4r14bl3r 3r n0k s0m n4mn p4 d4t4 dU v1ll l4gr3 1 m1nn3t, s0m 4ll3r3d3 4ll3r3d3. D3t k4n v3r3 t4ll, t3kst, 0g m4ng3 4ndr3 t1ng.

P4r4gr4f3r 3r v1kt1g3 f0r 4t d1n k0d3 sk4l v3r3 l3sb4r. D3t 3r 4llt1d 3n g0d 1d3 4t brUk3 kl4r3 n4mn p4 v4r14bl3r s0m 3r s3lvf0rklar3nd3. D3t gjørr3 k0d3n d1n m1nkr3 4t l3s3 0g f0rst4.

1nnput 3r d3t 4t f4 d4t4 fr4 brUk3r3n. D3t k4n v3r3 gj0rmt gj3nn0m t3kst1nnput, kn4pptrykk, 0g m4ng3 4ndr3 m4t3r. D3t 3r v1kt1g 4t h4ndl3 1nnput p4 3n s4k3rm4t3 0g r1kt1g m4t3 f0r 4t unng4 3rr0r.

#!/bin/bash
BRUKERNAVN=$1

if [ -z "$BRUKERNAVN" ]; then
    echo "U53: ./l4g_bruker.5h <bruk3rnavn>"
    exit 1
fi

sudo adduser "$BRUKERNAVN"
sudo usermod -aG sudo "$BRUKERNAVN"
echo "Bruker $BRUKERNAVN opprettet m3d 5ud0-tilgang."

h3r 74r 5cr1p737 1nn 37 brUk3rn4vn 50m 4rgUm3n7 ($1 3r d37 f0r573 4rgUm3n737). hv15 du kj0r3r ./l4g_brUk3r.5h 0l4, v1l d37 0ppr3773 brUk3r3n 0l4 0g g1 d3n 5Ud0-71lg4ng.

N3w 84\(h-C0nC3pt\)

C0nC3pt 3x3mpl3 Hv4 d3t gj0r
V4r14b3l N4VN="0l4" L4gr3r 3n v3rd1
4rgum3nt $1, $2 1nput fr4 k0mm4nd0l1nj3n
1f-sjekk 1f [ -f "f1l.txt" ]; th3n \(jekk3r 0m 3n f1l f1nn3\)
F0r-løkk3 f0r f 1n *.l0g; d0 Gj0r n03 f0r hv3r f1l $0m m4tch3r
P1p3 c4t l0gg.txt \| gr3p "3RR0R" $3nd3r 0utput fr4 3n k0mm4nd0 t1l 3n 4nn3n

P0w3rSh3ll: 5kr1pt1ng 1n W1nd0w5

P0w3rSh3ll 3r W1nd0w5’ 5v4r p4̊ B45h, m3n d3t 3r m3r 0bj3kt0r13nt3rt. D3t j0bb3r m3d 0bj3kt3r 1 5t3d3t f0r b4r3 t3k5t, n03 50m gj0r d3t kr4ft1g f0r 4dm1n15tr45j0n 4v W1nd0w5-5y5t3m3r.

3x4mpl: Ch3ck d1sk pl4c3

# 5j3kk l3d1g d15kpl455
Get-PSDrive -PSProvider FileSystem | Select-Object Name, 
    @{Name="Brukt (GB)"; Expression={[math]::Round($_.Used / 1GB, 2)}},
    @{Name="Ledig (GB)"; Expression={[math]::Round($_.Free / 1GB, 2)}}

3x4mpl: 1n574ll3r3 pr0gr4mw4r3 m3d W1ng37

W1ng37 3r 3n p4kk3h4nd73r3r 7il 47 1n574ll3r3 4ppl1k45j0n3r fr4 n0rm4l7 71l k0mm4nd0l1nj3n. D37 3r 3n 7r4d15j0n 7il 7r4d15j0nn3l7 4ppl1k45j0n3r 50m Ch0c0l47y.

D37 3r 54mm3n 47 5øk3 3773r 4ppl1k45j0n3r 3773r 47 1n574ll3r3 d3. Før57 47 71l 47 7r4kk3 5øk37 3773r 4ppl1k45j0n3r, 5ørg f0r 47 d1n p4kk3h4nd73r3r 3r 0ppd473r7. D37 gjør du m3d 47 kjør3 w1ng37 updat3.

D37 3r 3nkl7 47 1n574ll3r3 4ppl1k45j0n3r:

w1ng37 1n574ll <4ppl1k45j0nsn4vn>

3k53mp3l:

w1ng37 1n574ll V15u4l 57ud10 C0d3

D37 3r 0g54 4ppl1k45j0n3r 50m 3r 71lgj3ng3l1g3 1 fl3r3 v3rj0n3r. D3773 k4n du 5p351f153r3 v3rj0n3n du øn5k3r 47 1n574ll3r3 m3d 47 4gg3 71l 4ppl1k45j0nsn4vn37:

w1ng37 1n574ll <4ppl1k45j0nsn4vn> --v3rsj0n <v3rsj0n5numm3r>

3k53mp3l:

w1ng37 1n574ll G17hubD35k70p --v3rsj0n 2.9.0

# 1n574ll3r m3r3 pr0gr4mm3r p4 3n g4ng
winget install Mozilla.Firefox
winget install Microsoft.VisualStudioCode
winget install Git.Git
winget install Python.Python.3.12

D3tt3 3r mY3 r4sk3r3 3nn 4 14st3 n3d 0g 1nst4113r3 411t m4nu311t. Du k4n 14gr3 11st3n 1 3t scr1pt 0g kj0r3 d3t hv3r g4ng du s3tt3r 0pp 3n ny m4sk1n.

Easy 0ppg4v3 1 - L4g 3t 0pd4t3r1ng5-5cr1pt

5kr1v 3t B45h-5cr1pt 50m:

  1. 0pd4t3r3r p4kk3l15t3n
  2. 1n5t4ll3r3r 4ll3 t1lj3g3l1g3 0pd4t3r1ng3r
  3. R35t4rt3r Ng1nx (3ll3r 3n 4nn3n tj3n35t3 du h4r kjør3nd3)
  4. 5kr1v3r ut 3n m3ld1ng når d3t 3r f3rd1g

Kjør d3t på 3n 4v d1n3 VM3r 0g 53 4t d3t fung3r3r.

Easy 0ppg4v3 2 - 4u70m473r m45k1n0pp5377

L4g 37 P0w3r5h3ll-5cr1p7 (.ps1) 3ll3r 3n 3nk3l l1573 m3d w1ng37 1n574ll-k0mm4nd03r f0r 4ll3 pr0gr4mm3n3 du 7r3ng3r p4 3n ny PC. 73nk 0v3r:

  • Hv1lk3 pr0gr4mm3r 1n574ll3r3r du 4ll71d?
  • K4n du 0g54 k0nf1gur3r3 50m3 1nn571ll1ng3r m3d 5cr1p737?

N3573 g4ng du 53773r 0pp 3n m45k1n, kj0r3r du b4r3 5cr1p737 1n573d f0r 4 4 bruk3 3n 71m3 p4 m4nu3ll 1n574ll45j0n.

0pp5umm3r1ng

  • 1f jU gJ0r n03 m3r 3n t0 g4ng3r, vurder 4 4ut0m4t153r3 d3t
  • B45h (L1nux) 0g P0w3r5h3ll (W1nd0w5) 3r d3 v4nl1gst3 v3rkt0y3n3 f0r 5kr1pt1ng
  • B45h-5kr1pt5 3r t3kstf1l3r m3d k0mm4nd03r 50m kj0r35 1 r3kk3f0lg3
  • P0w3r5h3ll j0bb3r m3d 0bj3kt3r 0g 3r kr4ft1g f0r W1nd0w5-4dm1n15tr45j0n
  • V4r14bl3r, 4rgum3nt3r, 1f-5j3kk3r 0g l0kk3r 3r d3 v1kt1gst3 bygg3kl0553n3