littler: A scripting and command-line front-end for GNU R

CI License CRAN r-universe Dependencies Downloads Last Commit Documentation

So What Is It For?

#!/usr/bin/env r              ## for use in scripts

other input | r               ## for use in pipes

r somefile.R                  ## for running files

r -e 'expr'                   ## for evaluating expressions

r --help                      ## to show a quick synopsis


Plenty. See the examples vignette for a full set of introductory examples. Also see the examples/ directory for a full 28 example scripts, as well as maybe the older tests directory both of which are installed with the package.

Some scripts I use daily or near daily (in alphabetical order):

build.r                                ## builds from the current directory
c4c.r                                  ## submits current directory to winbuilder
compAttr.r                             ## run compileAttributes() for a Rcpp package
dratInstert.r 1.2-3.tar.gz -r /srv     ## inserts package into drat repo
install.r abc def                      ## installs packages abc and def
install.r abc_1.2-3.tar.gz             ## installs given tarball
install2.r -l /tmp/lib abc def         ## installs abc and def into /tmp/lib
rcc.r abc_1.2-3.tar.gz                 ## run's R CMD check via Gabor's rcmdcheck
render.r foo.Rmd                       ## calls rmarkdown::render()
roxy.r                                 ## run roxygenize() for a package (only Rd creation)
update.r                               ## updates any currently installed packages


Version 0.3.0 or later

The package resides on the CRAN network and can be installed via


Note that the package states OS_type: unix. It works great on all Linux variants, with a naming caveat on macOS (see below and the FAQ vignettes) and not at all on Windows (but could be ported just like RInside has been–the two show architectural similarities).

Previous Versions up to 0.2.3

In general, simply running the script bootstrap will configure and build the executable. Running make install (possibly as sudo make install) will install the resulting binary.

On Linux systems, ensure you have the autotools-dev package (or its equivalent on non-Debian/Ubuntu systems). On OS X, you may need to run brew install automake autoconf to get all the tools.

Alternate Naming

On some operating systems such as OS X, r is not different from R. As this risks confusing the main binary R for the R system with our smaller scripting frontend r, we suggest to consider running configure --program-prefix="l" which this leads to installation of a binary lr instead of r.

Alternate R Version

As littler uses autoconf its AC_PATH_PROG() macro to find R, one can simply adjust the PATH when calling configure (or, rather, bootstrap) to have another version of R used. For example, on a server with R-devel in this location, the following builds littler using this R-devel version: PATH="/usr/local/lib/R-devel/bin/:$PATH" ./bootstrap.

More Information

For more information about littler, please see

(but note that the latter now overlaps with the example vignette).


Jeff Horner (2006 to 2008) and Dirk Eddelbuettel (since 2006)


GPL (>= 2)