Skip to content

Instantly share code, notes, and snippets.

View pwenzel's full-sized avatar

Paul Wenzel pwenzel

View GitHub Profile
@pwenzel
pwenzel / date_examples.sh
Created May 19, 2011 20:03
Examples of Date In Shell Script
# backup_060403.tar.gz
tar -czf backup_$(date +%y%m%d).tar.gz
# test_20110519-150054.jpg
mv example.jpg test_$(date +%Y%m%d-%H%M%S).jpg
# test_1305835327.jpg (timestamp)
mv example.jpg test_$(date +%Y%m%d-%H%M%S).jpg
@pwenzel
pwenzel / conditional_ssl_rewrite
Created December 12, 2011 18:34
Conditional SSL Rewrite for Certain Directory Paths
RewriteEngine on
RewriteCond %{SERVER_PORT} ^443$
RewriteCond %{REQUEST_URI} !^/facebook_app
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
# This lets traffic that isn’t on port 443 (ssl) and isn't at /facebook_app/*
# and redirects it to the same path, but with SSL. This essentially lets stuff in
# /facbeook_app/* slide through over ssl or non-ssl, but nothing else.
@pwenzel
pwenzel / php_caching_snippet.php
Created January 5, 2012 22:35
PHP Caching Snippet adapted from Peter Karman
<?php
// Sample Usage
$uri_to_fetch = 'http://example.tld/path/to/uri';
$cache_on = true;
$cache_key = md5( $uri_to_fetch );
$cache_ttl = 60 * 15; // 15 minutes
$cache_file = '/tmp/example.tld/'.$cache_key;
if (file_exists($cache_file) &&
@pwenzel
pwenzel / save_screenshot.rb
Created February 29, 2012 21:35
Capture Screenshot With Selenium Webdriver
require 'rubygems'
require 'selenium-webdriver'
driver = Selenium::WebDriver.for :ie
driver.get "https://www.google.com"
driver.save_screenshot("./screen.png")
@pwenzel
pwenzel / fix_permissions.sh
Created March 22, 2012 14:47
change permissions for all files and folders with xargs
# change permissions for all files, skipping dirs
find . -type f | xargs chmod 664
# change permissions for all dirs, skipping files
find . -type d | xargs chmod 775
@pwenzel
pwenzel / git-deploy.php
Created April 7, 2012 02:35
Automated Deployments from Bitbucket/Github Service Hook
<?php
# Automated Deployments from Bitbucket/Github Service Hook
# Graciously borrowed from: http://brandonsummers.name/blog/2012/02/10/using-bitbucket-for-automated-deployments/
date_default_timezone_set('America/Chicago');
class Deploy {
/**
* A callback function to call after the deploy has finished.
@pwenzel
pwenzel / post-receive
Created April 23, 2012 01:33
hooks/post-receive deploy script
#!/bin/sh
GIT_WORK_TREE=/home/username/webapps/django/myproject git checkout -f
GIT_WORK_TREE=/home/username/webapps/django/myproject git reset --hard
@pwenzel
pwenzel / akamai_cache_test.sh
Created May 16, 2012 14:06
Test Akamai Headers
# http://mesmor.com/2012/03/18/akamai-pragma-debug-headers/
alias akacurl='curl -v -s -o /dev/null -H "accept-encoding: gzip" -H "Pragma: akamai-x-get-cache-key" -H "Pragma: akamai-x-cache-on" -H "Pragma: akamai-x-cache-remote-on" -H "Pragma: akamai-x-get-true-cache-key" ';
akacurl http://example.com/akamai-test-object.html;
@pwenzel
pwenzel / git-log-to-tsv.sh
Created June 6, 2012 20:53
Git Log to Tab-Delimited CSV File
# Local Dates:
git log --date=local --pretty=format:"%h%x09%an%x09%ad%x09%s" > commits.local.tsv.txt
# ISO Dates:
git log --date=iso --pretty=format:"%h%x09%an%x09%ad%x09%s" > commits.iso.tsv.txt
@pwenzel
pwenzel / git deploy
Last active October 7, 2015 06:07
Git Deploy Alias
# Push changes from development branch into production
# Add to .git/config
[alias]
deploy = !sh -c 'git checkout master && git merge development && git checkout development && git push --all'