ybc - interface to Yahoo Briefcase


  ybc - interface to Yahoo Briefcase


  ybc --help
  ybc create folder subfolder(s)
  ybc list folder
  ybc delete folder object(s)
  ybc upload folder file(s)
  ybc download folder file(s)
  ybc rename folder object name  # note: do not include extension on new name
  ybc move folder destination objects(s)
  ybc copy folder destination objects(s)
  ybc signout


  -h, --help                    brief help message
      --man                     full documentation
  -q, --quiet                   do not display informational messages
  -v, --verbose                 display informational messages
      --debug=DEBUG             set debugging/verbosity level
  -o, --overwrite               overwrite files
      --nooverwrite             do not overwrite files
      --overwrite-prefix=PREFIX create new object with prefix before overwriting
      --max-size=MAXSIZE        maximum size of file upload allowed
  -u, --userid=USERID           userid to use when signing in
  -p, --password=PASSWORD       password to use when signing in
      --password-fd=FD          get password from file descriptor number, e.g. 0
      --prompt                  prompt for userid and password
      --ssl-ca-path=PATH        path to SSL CA certs directory
      --ssl-ca-file=FILE        path to SSL CA certs file
      --cookies=FILE            file for storing cookies
      --credentials=FILE        file containing userids and passwords


This program provides command-line access to your Yahoo Briefcase. You can upload and download files and perform other operations such as list, rename, move, copy, and delete. Detailed information on each of these operations can be found in the WWW::Yahoo::Briefcase manpage.

The debugging/verbosity level can be set to a specific integer with the --debug option, or it can be set with the options --quiet (--debug=0) or --verbose (--debug=1). A level of 0 inhibits all informational/debugging messages--only error messages will be printed (this is the default). A level of 1 will display informational messages. A level of 2 will display the requests and responses being sent.

To overwrite files/folders when uploading, downloading, renaming, moving, copying, or creating new folders, specify the --overwrite option. The default is not to overwrite files. When overwriting, any conflicting files will be deleted before the requested operation is performed. Alternatively, if you specify a prefix with --overwrite-prefix, then the new file will be created with the prefix, and only if the operation is successful will the old file be deleted and the new file renamed (this prefixing feature is not available when moving or copying).

To set the maximum size of a file upload, specify the --max-size option. Note that this setting is not a user preference but is instead a limitation imposed on uploads to your briefcase. That is, you have no control over it. This method exists solely so that you can inform this program what your limit is, so that the program will not attempt to upload files larger than the limit. The standard file size limit is 5MB, but with Premium Service it is 15MB.

If you do not specify your userid on the command line, the first one found in ~/.yahoo/credentials.xml will be used. Note that your userid will be converted to lowercase before signing in. If you do not specify your password on the command line, it will be looked up in ~/.yahoo/credentials.xml. Multiple userids and passwords can be specified in this file--you can choose which password to use by just specifying the userid. A different location for the credentials file can be specified with the --credentials option.

If the userid and/or password are not defined on the command line nor can be found in the credentials XML file, then they will be prompted for. To skip the credentials file, use the --prompt option.

You can also specify a password by passing it in through a file descriptor using the password-fd option, for example, to get the password through a shell pipe from another program:

  echo-password | ybc --userid=me --password-fd=0 list folder

The SSL options can be used to specify the location of Certificate Authority Certificates (CA Certs) to perform certificate validation when connecting to Yahoo's sign-in server. The path to a directory containing CA Certs can be specified with the option --ssl-ca-path, for example, /etc/ssl/certs, and/or the path to a file containing CA Certs can be specified with the option --ssl-ca-file, for example, /etc/apache/ssl.crt/ca-bundle.crt. If either (or both) of these options are specified, then the module IO::Socket::SSL will be loaded and the SSL context will be initialized with peer certificate validation enabled. If you do not specify either of these options, then the IO::Socket::SSL module will be not be loaded by this script; instead, LWP will automatically load whatever SSL module is installed (IO::Socket::SSL or Net::SSL from Crypt-SSLeay).

Any cookies returned from Yahoo after signing in will be stored in ~/.yahoo/cookies.txt to be used on future invocations to bypass the sign-in step. A different location for this file can be specified with the --cookies option.

Often-used options may be specified in the file ~/.ybc, for example, it could contain the following lines:

  --verbose --overwrite
  --ssl-ca-path /etc/ssl/certs




WWW::Yahoo::Briefcase, WWW::Yahoo::Credentials


Ken Neighbors, Ph.D. ken@nsds.com


Copyright 2003 by Ken Neighbors

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.000 or (at your option) any later version of Perl. That is, you can redistribute this program and/or modify it under the terms of either:

  a) the GNU General Public License as published by the Free Software
     Foundation; either version 1, or (at your option) any later version,
  b) the "Artistic License" which comes with Perl, or
  c) the license terms of Perl versions later than 5.000
 ybc - interface to Yahoo Briefcase