Fedora Client Command-Line Utilities

Fedora Development Team

$Id: client-cmdline.dbx,v 1.2 2003/05/17 01:41:34 rlw Exp $


Table of Contents

Introduction
fedora-dsinfo
fedora-export
fedora-find
fedora-ingest
fedora-ingest-demos
fedora-purge

Introduction

The Fedora client distribution comes with several command-line utilities that can be used to run some common operations without bringing up the GUI or writing your own SOAP client. A description and usage instructions for each follows.

This guide assume you have correctly installed the Fedora client distribution as per the install guide, including having set up your PATH and FEDORA_HOME appropriately. The command-line scripts are located in FEDORA_HOME/client/bin/. In Windows, these commands resolve to batch files (.bat); in Unix, they resolve to shell scripts (.sh).

fedora-dsinfo

fedora-dsinfo [hostname] [port-number] [user] [pass] [pid]

Where:

  • [hostname] - The hostname of the Fedora server; default is localhost.

  • [port-number] - The port number on which the Fedora server is running; default 8080.

  • [user] - The Fedora user (e.g. fedoraAdmin).

  • [pass] - The user's password.

  • [pid] - The pid of the object whose datastream information should be shown.

Example:

fedora-dsinfo localhost 8080 fedoraAdmin fedoraAdmin demo:5

Displays key information about each of an object's datastreams.

fedora-export

fedora-export [hostname] [port-number] [user] [pass] [file] [pid]

Where:

  • [hostname] - The hostname of the Fedora server; default is localhost.

  • [port-number] - The port number on which the Fedora server is running; default 8080.

  • [user] - The Fedora user (e.g. fedoraAdmin).

  • [pass] - The user's password.

  • [file] - The file to export to.

  • [pid] - The PID of the object to export.

Example:

fedora-export localhost 8080 fedoraAdmin fedoraAdmin myfile.xml demo:6

Exports an object from the repository to a local file.

fedora-find

fedora-find [hostname] [port-number] [fieldList] [searchString]

Where:

  • [hostname] - The hostname of the Fedora server; default is localhost.

  • [port-number] - The port number on which the Fedora server is running; default 8080.

  • [fieldList] - A space-delimited list of fields. These are the fields that will be displayed for each object that matches the searchString. See http://host:port/fedora/search for a complete list of displayable fields and descriptions of each.

  • [searchString] - A simple text string to search all fields for. This may include wildcard characters and is case-insensitive.

Example:

fedora-find localhost 8080 "pid fType title description" "fedora"

(shows the pid, Fedora object type, title, and description fields of each object that has the word fedora somewhere in it's indexed fields.)

A simple way to search a repository's indexed fields. More advanced searches can be done with the web-based search interface at http://host:port/fedora/search, or the Admin GUI's search interface.

fedora-ingest

fedora-ingest [hostname] [port-number] [user] [pass] [file] [logMessage]

Where:

  • [hostname] - The hostname of the Fedora server; default is localhost.

  • [port-number] - The port number on which the Fedora server is running; default 8080.

  • [user] - The Fedora user (e.g. fedoraAdmin).

  • [pass] - The user's password.

  • [file] - The METS file to ingest.

  • [logMessage] - A log message regarding the ingest.

Example:

fedora-ingest localhost 8080 fedoraAdmin fedoraAdmin myfile.xml "My first ingest test"

Ingests a single METS file into the repository, and outputs the PID.

fedora-ingest-demos

fedora-ingest-demos [hostname] [port-number] [user] [pass]

Where:

  • [hostname] - The hostname of the Fedora server; default is localhost.

  • [port-number] - The port number on which the Fedora server is running; default 8080.

  • [user] - The Fedora user (e.g. fedoraAdmin).

  • [pass] - The user's password.

Example:

fedora-ingest-demos localhost 8080 fedoraAdmin fedoraAdmin

A convenient script to ingest all included demo objects for a new Fedora installation. See the Demo guide for descriptions of these objects.

fedora-purge

fedora-purge [hostname] [port-number] [user] [pass] [pid] [logMessage]

Where:

  • [hostname] - The hostname of the Fedora server; default is localhost.

  • [port-number] - The port number on which the Fedora server is running; default 8080.

  • [user] - The Fedora user (e.g. fedoraAdmin).

  • [pass] - The user's password.

  • [pid] - The PID of the object to permanently remove.

  • [logMessage] - A log message explaining the removal.

Example:

fedora-purge localhost 8080 fedoraAdmin fedoraAdmin demo:6 "It was just a test object"

Permanently removes an object from the repository. Note: Behavior Definition objects (BDefs) cannot be removed if there are objects that depend on them. When removing a BDef from the repository, first the dependent object(s) should be removed, then the implementing Behavior Mechanism(s), then the BDef itself.