Colin Blackburn, Mark Carroll & Josh Moore
The CLI is an OMERO client driven by the command line. It is a set of Python-based system-administration, deployment and advanced user tools. Most of commands work remotely so that the CLI can be used as a client against a remote OMERO server. It offers tools for users, facility managers, system administrators and developers.
$ bin/omero help usage: omero <command> [options] args See 'help <command>' or '<command> -h' for more information on syntax Type 'quit' to exit Available commands: admin, cecog, chgrp, chown, config, db, delete, download, export, fs, group, help, hql, import, ldap, load, node, obj, perf, quit, script, search, server, sessions, shell, tag, testengine, upload, user, version, web Other help topics: debug, env For additional information, see: http://www.openmicroscopy.org/site/support/omero5.2/users/cli/index.html
$ bin/omero import ~/Work/images/dv/IAGFP-Noc01_R3D.dv ... Imported pixels: 51 Other imported objects: Fileset:51 Image:51
$ bin/omero upload tox.ini Uploaded tox.ini as 275 $ bin/omero obj get OriginalFile:275 name tox.ini
$ bin/omero tag -h ... list List all the tags, grouped by tagset listsets List tag sets create Create a new tag createset Create a new tag set load Import new tag(s) and tagset(s) from JSON file link Link annotation to an object
$ bin/omero tag create --name Tag1 TagAnnotation:1 $ bin/omero tag create --name Tag2 TagAnnotation:2 $ bin/omero tag createset --name Set1 --tag 1 2 TagAnnotation:3 $ bin/omero tag list +- 3:'Set1' |\ | +- 2:'Tag2' | +- 1:'Tag1' $ bin/omero tag link Image:51 1 ImageAnnotationLink:51
$ bin/omero obj -h usage: bin/omero obj ... [{new,update,null,map-get,map-set,get,list-get}] [Class] [fields [fields ...]] ... Positional Arguments: {new,update,null,map-get,map-set,get,list-get} operation to be performed Class OMERO model object name, e.g. Project fields fields to be set, e.g. name=foo
$ bin/omero obj new Dataset name="Dataset One" Dataset:1 $ bin/omero obj update Dataset:1 description="The primary dataset" Dataset:1 $ bin/omero obj get Dataset:1 name Dataset One $ bin/omero obj get Dataset:1 description=The primary dataset id=1 name=Dataset One version=
$ bin/omero obj new Project name="P-1" description="New project" Project:1 $ bin/omero obj new ProjectDatasetLink parent=Project:1 child=Dataset:1 ProjectDatasetLink:1 $ bin/omero obj new DatasetImageLink parent=Dataset:1 child=Image:51 DatasetImageLink:1 $ bin/omero obj get DatasetImageLink:1 child Image:51 $ bin/omero obj get DatasetImageLink:1 parent Dataset:1
$ bin/omero obj new FileAnnotation file=OriginalFile:275 FileAnnotation:5 $ bin/omero obj new ImageAnnotationLink parent=Image:51 child=FileAnnotation:5 ImageAnnotationLink:2 $ bin/omero obj new MapAnnotation name=domain ns=example.com MapAnnotation:6 $ bin/omero obj map-set MapAnnotation:6 mapValue 1 "http://openmicroscopy.org" MapAnnotation:6 $ bin/omero obj map-get MapAnnotation:6 mapValue 1 http://openmicroscopy.org $ bin/omero obj new ImageAnnotationLink parent=Image:51 child=MapAnnotation:6 ImageAnnotationLink:3
$ project=$(omero obj new Project name='my Project') $ dataset=$(omero obj new Dataset name='my Dataset') $ bin/omero obj new ProjectDatasetLink parent=$project child=$dataset ProjectDatasetLink:2 $ bin/omero import -T $dataset ~/Work/images/dv/CFPNEAT01_R3D.dv Imported pixels: 52 Other imported objects: Fileset:52 Image:52 ... ==> Summary 2 files uploaded, 1 fileset created, 1 image imported, 0 errors in 0:00:03.866
usage: bin/omero search [-h] [--index] [--no-parse] [--field [FIELD [FIELD ...]]] [--from YYYY-MM-DD] [--to YYYY-MM-DD] [--date-type {acquisitionDate,import}] [--admin] [--all] [--ids-only] [--limit LIMIT] [--offset OFFSET] [--style {plain,csv,sql}] type [query] Positional Arguments: type Object type to search for, e.g. 'Image' or 'Well' query Single query to run Optional Arguments: --from YYYY-MM-DD Start date for limiting searches (YYYY-MM-DD) --to YYYY-MM-DD End date for limiting searches (YYYY-MM-DD) --ids-only Show only the ids of returned objects --style {plain,csv,sql} use alternative output style (default=sql)
$ bin/omero search Image "dv" # | Class | Id | name | acquisitionDate | ... ---+--------+-----+--------------------+--------------------------+---- 0 | ImageI | 101 | IAGFP-Noc01_R3D.dv | Tue Aug 23 11:54:53 2005 | ... 1 | ImageI | 52 | CFPNEAT01_R3D.dv | Fri Feb 27 10:25:32 2009 | ... (2 rows) $ bin/omero search Image "dv" --ids-only --style csv #,Col1 0,ImageI:101 1,ImageI:52
usage: bin/omero hql [-h] [--admin] [--all] [--ids-only] [--limit LIMIT] [--offset OFFSET] [--style {plain,csv,sql}] [-C] [-s SERVER] [-p PORT] [-g GROUP] [-u USER] [-w PASSWORD] [-k KEY] [--sudo ADMINUSER] [-q] [query] Positional Arguments: query Single query to run Optional Arguments --all Perform query on all groups --ids-only Show only the ids of returned objects --limit LIMIT maximum number of return values (default=25) --offset OFFSET number of entries to skip (default=0) --style {plain,csv,sql} use alternative output style (default=sql)
$ bin/omero hql "select id, name, fileset.id from Image where id > 50" # | Col1 | Col2 | Col3 ---+------+--------------------+------ 0 | 52 | CFPNEAT01_R3D.dv | 52 1 | 101 | IAGFP-Noc01_R3D.dv | 101 2 | 102 | new.tiff | 102 (3 rows) $ bin/omero hql Enter query:select id, name, fileset.id from Image order by id desc # | Col1 | Col2 | Col3 ---+------+--------------------+------ 0 | 102 | new.tiff | 102 1 | 101 | IAGFP-Noc01_R3D.dv | 101 2 | 52 | CFPNEAT01_R3D.dv | 52 (3 rows) To see details for object, enter line number. To move ahead one page, enter 'p' To re-display list, enter 'r'. To quit, enter 'q' or just enter. To run another query, press enter
$ bin/omero export --file new.tiff Image:52 $ bin/omero export --file new.xml --type XML Image:52 $ ls new.tiff new.xml
$ bin/omero download FileAnnotation:5 new.tmp $ bin/omero download Image:102 original.tiff $ ls new.tiff new.tmp new.xml original.tiff
usage: bin/omero delete [-h] [--wait WAIT] [--include INCLUDE] [--exclude EXCLUDE] [--ordered] [--list] [--report] [--dry-run] [obj [obj ...]] Positional Arguments: obj Objects to be processed in the form <Class>:<Id> Optional Arguments: --include INCLUDE Modifies the given option by including a list of objects --exclude EXCLUDE Modifies the given option by excluding a list of objects --report Print more detailed report of each action --dry-run Do a dry run of the command, providing a report of what would have been done
$ bin/omero delete Image:52 --report --dry-run Deleted objects ImageAnnotationLink:51-54 MapAnnotation:52 Image:52 ... $ bin/omero delete Image:52 --include TagAnnotation,FileAnnotation --report --dry-run Deleted objects AnnotationAnnotationLink:1,2 FileAnnotation:5 ImageAnnotationLink:51-54 MapAnnotation:52 TagAnnotation:1,2 Image:52 ...
$ bin/omero delete Project/Image:2 --report --dry-run ... Deleted objects DatasetImageLink:2,51 Image:52,101 OriginalFile:277-279,370-372 Pixels:52,101 Fileset:52,101 ...
usage: bin/omero chgrp [-h] [--wait WAIT] [--include INCLUDE] [--exclude EXCLUDE] [--ordered] [--list] [--report] [--dry-run] [grp] [obj [obj ...]] ... Positional Arguments: grp Group to move objects to obj Objects to be processed in the form <Class>:<Id> Optional Arguments: --include INCLUDE Modifies the given option by including a list of objects --exclude EXCLUDE Modifies the given option by excluding a list of objects --report Print more detailed report of each action --dry-run Do a dry run of the command, providing a report of what would have been done
$ bin/omero chgrp 5 OriginalFile:275 --report --dry-run omero.cmd.Chgrp2 OriginalFile:275 failed: 'graph-fail' failed: may not move OriginalFile[275] while used by FileAnnotation[5] Steps: 4 Elapsed time: 0.129 secs. Flags: [FAILURE, CANCELLED] $ bin/omero chgrp Group:5 FileAnnotation:5 --report omero.cmd.Chgrp2 FileAnnotation:5 ok Steps: 6 Elapsed time: 0.121 secs. Flags: [] Included objects FileAnnotation:5 OriginalFile:275 Deleted objects ImageAnnotationLink:2
$ bin/omero chgrp 5 Dataset/Image:1 --report --dry-run ... Included objects ImageAnnotationLink:3 MapAnnotation:6 Image:51 OriginalFile:272-274 ... Deleted objects ImageAnnotationLink:1 DatasetImageLink:1
usage: bin/omero chown [-h] [--wait WAIT] [--include INCLUDE] [--exclude EXCLUDE] [--ordered] [--list] [--report] [--dry-run] [usr] [obj [obj ...]] Positional Arguments: usr user to transfer ownership of objects to obj Objects to be processed in the form <Class>:<Id> Optional Arguments: --include INCLUDE Modifies the given option by including a list of objects --exclude EXCLUDE Modifies the given option by excluding a list of objects --report Print more detailed report of each action --dry-run Do a dry run of the command, providing a report of what would have been done
$ bin/omero chown user-1 Project/Image:1 omero.cmd.Chown2 Project/Image:1 ok $ bin/omero chown 101 Image:1 $ bin/omero chown User:101 Image:2 $ bin/omero chown Experimenter:101 Image:3 $ bin/omero chown jane Image:51,52,53