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

  • Hey, big thank you for looking up & giving me my PD from 4 years ago, 16 acres optical! http://is.gd/5hezr #fb 4 years 48 weeks ago
  • RE: Workflow-ng docs, found my own answer: http://is.gd/5fyqN #drupal #howto 4 years 48 weeks ago
  • @lucidus_neil that's super-slick. May have to investigate the same for #svn! #drupal #drush #git 4 years 48 weeks ago
  • @mikesusz (Sorry for the belated response) Yep, AT&T. 4 years 48 weeks ago
  • Lazyweb: Can anyone direct me to a concise example of a custom workflow-ng action for #drupal 5? Having a heck of a time finding any 4 years 48 weeks ago

Older

Contact

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