Skip to content

Instantly share code, notes, and snippets.

View jpdias's full-sized avatar
🔄
Engineering In Progress

JP Dias jpdias

🔄
Engineering In Progress
View GitHub Profile
@jpdias
jpdias / evaluationscripts.sh
Last active May 31, 2020 17:40
Eval Script for TP2 Part1 WC - SOPE 2020 FEUP
#!/bin/bash
echo "making stuff"
make
#Version 1
echo "> running server 30s"
/usr/bin/time -f "%E real,%U user,%S sys" -o "qtime.out" ./Q1 -t 30 door > q.log 2> q.err &
pid_c=$!
@jpdias
jpdias / install.sh
Created May 4, 2020 14:53
Lubuntu 18.04 Enhanced Session on Hyper-V
#!/bin/bash
#
# This script is for Ubuntu 18.04 Bionic Beaver to download and install XRDP+XORGXRDP via
# source.
#
# Major thanks to: http://c-nergy.be/blog/?p=11336 for the tips.
#
###############################################################################
@jpdias
jpdias / newfolderfix.reg
Created June 25, 2020 09:47
New Folder broken fix Win 10
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\CLSID\{11dbb47c-a525-400b-9e80-a54615a090c0}]
@="CLSID_ExecuteFolder"
[HKEY_CLASSES_ROOT\CLSID\{11dbb47c-a525-400b-9e80-a54615a090c0}\InProcServer32]
@="ExplorerFrame.dll"
"ThreadingModel"="Apartment"
[HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers\New]
@="{D969A300-E7FF-11d0-A93B-00A0C90F2719}"
[HKEY_CLASSES_ROOT\Folder]
@="Folder"
@jpdias
jpdias / sope_normal_solution.md
Last active May 18, 2021 12:09
SOPE Exam 2020 Normal + Retake

O programa removebig remove de um diretório todos os ficheiros regulares cujo tamanho seja superior a um dado valor. Os argumentos do programa são o nome do diretório e o referido tamanho (exemplo de invocação para remover os ficheiros do diretório dir1 cujo tamanho seja superior a 1000000: removebig dir1 1000000). Nota: os subdiretórios devem ser ignorados.

a) Escreva a parte do código de removebig que percorre o referido diretório e, por cada ficheiro encontado cujo tamanho seja superior ao indicado, escreve o nome do ficheiro na saída padrão, incrementa um contador do número de ficheiros a remover (variável count) e invoca a função void remove(char *filename), cujo parâmetro é o nome do ficheiro a remover. Não implemente por enquanto esta função.

b) Escreva o código da função remove() que remove o ficheiro cujo nome recebe como parâmetro, recorrendo para isso a um subprocesso (processo filho) que executa o utilitário rm. Nota: não use chamadas system() .

c) Escreva a parte do código de

@jpdias
jpdias / zip-brute.py
Last active August 11, 2020 16:11
Python3 ZIP dictionary bruteforcer
import zipfile
import timeit
import sys
argv = sys.argv
zFile = zipfile.ZipFile(str(argv[1]))
dictionary_attack = argv[2]
def Cracker():
attempts = 0
@jpdias
jpdias / macros.tex
Created December 7, 2020 15:30
mymacros.tex
\newcommand{\etal}{\emph{et~al}.}
\newcommand{\ie}{\emph{i}.\emph{e}., }
\newcommand{\eg}{\emph{e}.\emph{g}., }
\newcommand{\cf}{\emph{cf}. }
\newcommand{\viz}{\emph{viz}., }
\newcommand{\pattern}[1]{\textsc{\MakeLowercase{#1}}}
\newcounter{cPage}
@jpdias
jpdias / script.sh
Last active March 22, 2021 19:32
Validation script for SOPE 2021, Group Work #2
#!/usr/bin/env bash
show_usage() {
echo "Usage: $0 <test_no> || $0 clean"
exit 1
}
echo ":::::::: SOPE 2020/2021 MT2 ::::::::"
clean() {
@jpdias
jpdias / grafana.json
Last active April 8, 2021 15:22
Grafana Pi Cluster
{
"annotations": {
"list": [
{
"$$hashKey": "object:2875",
"builtIn": 1,
"datasource": "-- Grafana --",
"enable": true,
"hide": true,
"iconColor": "rgba(0, 211, 255, 1)",
@jpdias
jpdias / macros.tex
Created January 6, 2022 19:01
Latex helpers
%% abbrevs.
\newcommand{\etal}{\emph{et~al}. }
\newcommand{\ie}{\emph{i}.\emph{e}., }
\newcommand{\eg}{\emph{e}.\emph{g}., }
\newcommand{\cf}{\emph{cf}. }
\newcommand{\viz}{viz. }
\usepackage{stringstrings}
@jpdias
jpdias / index.js
Created January 7, 2022 09:19
Basic HTTP server
const http = require('http');
// Create a local server to receive data from
const server = http.createServer((req, res) => {
console.log(req.url)
console.log(req.method)
res.writeHead(200, { 'Content-Type': 'application/json' });