Base64 Command line Utility

Thrown together in PHP.

Usage:

Encode /path/to/base64 -e 'The quick brown fox'


/path/to/base64 'The quick brown fox'
Decode /path/to/base64 -d VGhlIHF1aWNrIGJyb3duIGZveA==
Help /path/to/base64 -h

Note that the script output is not succeeded by a newline, the reason being that I don't want to have to trim a newline every time I call this script from somewhere else.

Download source code

#!/usr/bin/php -q
<?php
  /* 
   * Simple Base64 encode/decode shell utility written in PHP
   * (C) 2004 by Andy Chase (achase@greyledge.net)
   * http://sundown.greyledge.net
   *
   * Feel free to use and redistribute this code in any way you see fit,
   * provided this notice remains in place.
   */

$action = '';
$string = '';
switch($_SERVER['argv'][1]){

 case '-e':
   $action = 'encode';
   $string = $_SERVER['argv'][2];
   break;
 case '-d':
   $action = 'decode';
   $string = $_SERVER['argv'][2];
   break;

 case '-h':
   $action = 'help';
   break;

 case '':
   $action = 'help';
   break;
 default:
   $action = 'encode';
   $string = $_SERVER['argv'][1];

}

switch($action){
 case 'encode':
   echo base64_encode($string);
   break;
 case 'decode':
   echo base64_decode($string);
   break;
 case 'help':
   echo "Usage: base64 [-edh] [string]\n\t-e\tBase64-encode [string]\n\t-d\tBase64-decode [string]\n \t-h\tDisplay this message.\n";

}

?>
Syndicate content

Twitter

  • You can waste time with your friends once we reach our goal. #starwarspledgedrive 4 years 22 weeks ago
  • I find your lack of contributions disturbing. #starwarspledgedrive 4 years 22 weeks ago
  • Installing the Thawte CA Cert. in Plesk 8.6: http://helpdesk.netsonic.net/support/index.php?_m=knowledgebase&_a=viewa... 4 years 22 weeks ago
  • Protip to self: If you're going to tweet plesk advice, make sure you're looking at the right browser tab. Pls ignore previous tweet. 4 years 22 weeks ago
  • Plesk tip: if you're using the same dir for http & https, you need to use vhost_ssl.conf, not vhost.conf to do custom apache config. 4 years 22 weeks ago

Older

Contact

Andy Chase
(978) 297-6402
andychase [at] gmail.com
GPG/PGP Public Key