Skip to content

Instantly share code, notes, and snippets.

View fieldse's full-sized avatar

Matt fieldse

View GitHub Profile
@fieldse
fieldse / List files installed by a Debian or Ubuntu .deb package.md
Last active September 3, 2017 13:48
List files installed by a Debian or Ubuntu .deb package
dpkg -L <package name>

Example:

$ dpkg -L apache2
/.
/usr
/usr/share

To list files that will be installed by a debian package (.deb) which is not currently installed on your system

# Ubuntu 15.04+ 
apt download <packagename>

# Earlier versions of Ubuntu
apt-get --download <package name>
@fieldse
fieldse / grepmatch.md
Created September 4, 2017 17:33
Show lines before and after a matching string with grep

Grep to show the surrounding 2 lines before and after your match

grep 'some string to match' -B 2 -A 2 myfile.txt
@fieldse
fieldse / Pytest - Capture print statements in Pytest modules from stdout using capsys parameter
Last active September 14, 2017 04:19
Python pytest + stdout: Capture messages sent to stdout / stderr from your functions with pytest capsys
# test.py
# Print statements to pytest
# Capture messages sent to stdout / stderr from your functions,
# and test the output with a pytest unit test.
# tl;dr - use the capsys parameter in your test arguments
# extract the messages sent to stdout/stderr with capsys.readouterr()
# calendar_ical.rb
# Todo - date string format
def get_date_format(time_obj)
# Convert standard ruby datetime obj to ISO 8601 format
# time_obj - should be datetime object
# Time format:
# timestring.to_time.iso8601 # Incorrect format! We need 19970610T172345Z
# 1997 06 10 T 17 23 45 Z
@fieldse
fieldse / javascript.json
Created December 13, 2018 21:06
VSCode snippet for javascript boxed block comment
{
// Place your snippets for javascript here. Each snippet is defined under a snippet name and has a prefix, body and
// description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the
// same ids are connected.
// Example:
// "Print to console": {
// "prefix": "log",
// "body": [
// "console.log('$1');",
@fieldse
fieldse / gnome-plugin-install.sh
Last active January 31, 2019 16:54
GNOME utility: Install gnome-shell plugins from zip file commandline
#!/bin/bash
# gnome-shell-install
# Utility script to install gnome-shell plugin from zip
## Usage:
# Copy this file to your .local/bin directory and chmod +x [filename]
# From the directory where your downloaded GNOME shell plugin zip is, run
# gnome-plugin-install.sh [mypluginfilename.zip]
# License:
@fieldse
fieldse / todos-migrate.sh
Created September 29, 2020 15:48
Daily todo file migrator
#!/bin/bash
# todos-migrate.sh
# Generate a todo file from template
template="$HOME/Templates/Todos.template"
target_dir="$HOME/Documents"
archive_dir="$HOME/Documents/todos"
filename="Todos.md"
# Today's file
@fieldse
fieldse / grep_match_count.sh
Created November 15, 2020 10:13
Grep/zgrep: count matches across multiple files
# Count occurences of KEYWORD across all files named [something].log
# Flag: -src
# Credit:
# https://superuser.com/questions/205591/show-the-matching-count-of-all-files-that-contain-a-word
grep -src KEYWORD *.log
# Example output:
# production.20201107.log:12
@fieldse
fieldse / Firefox multiple profile setup steps.md
Last active July 8, 2021 11:22
How to Create a Portable Firefox and Run Multiple Profiles