For the record, this is Linux R-devel: root at 4bef68c16864:~# R CMD /opt/R-devel/lib/R/bin/Rcmd: 60: shift: can't shift that many root at 4bef68c16864:~# R CMD -h /opt/R-devel/lib/R/bin/Rcmd: 62: exec: -h: not found root at 4bef68c16864:~# R CMD --help /opt/R-devel/lib/R/bin/Rcmd: 62: exec: --help: not found This is R-release on macOS: ? R CMD /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: /Library/Frameworks/R.framework/Resources/bin/: is a directory /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: /Library/Frameworks/R.framework/Resources/bin/: cannot execute: Undefined error: 0 ? R CMD -h /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: -h: invalid option exec: usage: exec [-cl] [-a name] file [redirection ...] ? R CMD --help /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: --: invalid option exec: usage: exec [-cl] [-a name] file [redirection ...] On Windows you indeed get a useful list of commands and more helpful tips. Gabor On Sun, Jun 30, 2019 at 11:36 PM Abby Spurdle <spurdle.a at gmail.com> wrote:> > > First time posting in the R mailing lists so hopefully this works well. > > I noticed when I type `R CMD` I get this unhelpful message: > > /usr/lib/R/bin/Rcmd: 60: shift: can't shift that many > > I wasn't able to reproduce this. > Maybe it's a Linux thing. > But then, I suspect you've omitted some of your input. > > > I also think it would be nice if `R CMD help` showed the usable commands. > > What do you mean... > All of the following give you the "usable commands": > > > R CMD > > R CMD -h > > R CMD --help > > [[alternative HTML version deleted]] > > ______________________________________________ > R-devel at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel
In that case, I was wrong. And I must apologize... In saying that, good to see Windows out performing Linux on the command line... On Mon, Jul 1, 2019 at 11:30 AM G?bor Cs?rdi <csardi.gabor at gmail.com> wrote:> > For the record, this is Linux R-devel: > > root at 4bef68c16864:~# R CMD > /opt/R-devel/lib/R/bin/Rcmd: 60: shift: can't shift that many > root at 4bef68c16864:~# R CMD -h > /opt/R-devel/lib/R/bin/Rcmd: 62: exec: -h: not found > root at 4bef68c16864:~# R CMD --help > /opt/R-devel/lib/R/bin/Rcmd: 62: exec: --help: not found > > This is R-release on macOS: > > ? R CMD > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: > /Library/Frameworks/R.framework/Resources/bin/: is a directory > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: > /Library/Frameworks/R.framework/Resources/bin/: cannot execute: > Undefined error: 0 > ? R CMD -h > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: -h: > invalid option > exec: usage: exec [-cl] [-a name] file [redirection ...] > ? R CMD --help > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: --: > invalid option > exec: usage: exec [-cl] [-a name] file [redirection ...] > > On Windows you indeed get a useful list of commands and more helpful tips. > > Gabor > > > On Sun, Jun 30, 2019 at 11:36 PM Abby Spurdle <spurdle.a at gmail.com> wrote: > > > > > First time posting in the R mailing lists so hopefully this workswell.> > > I noticed when I type `R CMD` I get this unhelpful message: > > > /usr/lib/R/bin/Rcmd: 60: shift: can't shift that many > > > > I wasn't able to reproduce this. > > Maybe it's a Linux thing. > > But then, I suspect you've omitted some of your input. > > > > > I also think it would be nice if `R CMD help` showed the usablecommands.> > > > What do you mean... > > All of the following give you the "usable commands": > > > > > R CMD > > > R CMD -h > > > R CMD --help > > > > [[alternative HTML version deleted]] > > > > ______________________________________________ > > R-devel at r-project.org mailing list > > https://stat.ethz.ch/mailman/listinfo/r-devel[[alternative HTML version deleted]]
Yes I'm using R 3.4.4 on Ubuntu 18.04. I doubt the Windows version would make use of a bash script. I'm all for a more consistent interface. It puzzles me that a shell script is used at all since that does not seem portable, especially for Windows users. To my surprise I discovered the R that's called from shell, usr/bin/R, is actually just a shell script. The binary that's called seems to be /usr/lib/R/bin/exec/R which is a tiny executable that then probably calls something else. In comparison the python called from shell, /usr/bin/python3.6, really is a binary. I'm sure there's a good reason that R uses a shell wrapper script but it's not like a C program can't parse arguments or set env vars. On Sun, Jun 30, 2019 at 7:30 PM G?bor Cs?rdi <csardi.gabor at gmail.com> wrote:> For the record, this is Linux R-devel: > > root at 4bef68c16864:~# R CMD > /opt/R-devel/lib/R/bin/Rcmd: 60: shift: can't shift that many > root at 4bef68c16864:~# R CMD -h > /opt/R-devel/lib/R/bin/Rcmd: 62: exec: -h: not found > root at 4bef68c16864:~# R CMD --help > /opt/R-devel/lib/R/bin/Rcmd: 62: exec: --help: not found > > This is R-release on macOS: > > ? R CMD > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: > /Library/Frameworks/R.framework/Resources/bin/: is a directory > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: > /Library/Frameworks/R.framework/Resources/bin/: cannot execute: > Undefined error: 0 > ? R CMD -h > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: -h: > invalid option > exec: usage: exec [-cl] [-a name] file [redirection ...] > ? R CMD --help > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: --: > invalid option > exec: usage: exec [-cl] [-a name] file [redirection ...] > > On Windows you indeed get a useful list of commands and more helpful tips. > > Gabor > > > On Sun, Jun 30, 2019 at 11:36 PM Abby Spurdle <spurdle.a at gmail.com> wrote: > > > > > First time posting in the R mailing lists so hopefully this works well. > > > I noticed when I type `R CMD` I get this unhelpful message: > > > /usr/lib/R/bin/Rcmd: 60: shift: can't shift that many > > > > I wasn't able to reproduce this. > > Maybe it's a Linux thing. > > But then, I suspect you've omitted some of your input. > > > > > I also think it would be nice if `R CMD help` showed the usable > commands. > > > > What do you mean... > > All of the following give you the "usable commands": > > > > > R CMD > > > R CMD -h > > > R CMD --help > > > > [[alternative HTML version deleted]] > > > > ______________________________________________ > > R-devel at r-project.org mailing list > > https://stat.ethz.ch/mailman/listinfo/r-devel >[[alternative HTML version deleted]]
On 30/06/2019 8:08 p.m., Abby Spurdle wrote:> In that case, I was wrong. > And I must apologize... > > In saying that, good to see Windows out performing Linux on the command > line...That's going to set the bees abuzz...
In my humble personal opinion, I try to avoid bash scripts longer than a couple lines because I find the syntax so obtuse and unintuitive it's difficult to maintain and write less buggy code. But that is mostly a reflection of my personal inexperience. I think the only time a bash script is really needed is for maximum portability in systems _with bash_. (I would use python for a wrapper in personal projects, given python comes pre-installed on many linux systems and OS X, but I completely understand not wanting to burden Windows users with an extra python dependency to install.) On Sun, Jun 30, 2019 at 8:08 PM Abby Spurdle <spurdle.a at gmail.com> wrote:> In that case, I was wrong. > And I must apologize... > > In saying that, good to see Windows out performing Linux on the command > line... > > > On Mon, Jul 1, 2019 at 11:30 AM G?bor Cs?rdi <csardi.gabor at gmail.com> > wrote: > > > > For the record, this is Linux R-devel: > > > > root at 4bef68c16864:~# R CMD > > /opt/R-devel/lib/R/bin/Rcmd: 60: shift: can't shift that many > > root at 4bef68c16864:~# R CMD -h > > /opt/R-devel/lib/R/bin/Rcmd: 62: exec: -h: not found > > root at 4bef68c16864:~# R CMD --help > > /opt/R-devel/lib/R/bin/Rcmd: 62: exec: --help: not found > > > > This is R-release on macOS: > > > > ? R CMD > > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: > > /Library/Frameworks/R.framework/Resources/bin/: is a directory > > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: > > /Library/Frameworks/R.framework/Resources/bin/: cannot execute: > > Undefined error: 0 > > ? R CMD -h > > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: -h: > > invalid option > > exec: usage: exec [-cl] [-a name] file [redirection ...] > > ? R CMD --help > > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: --: > > invalid option > > exec: usage: exec [-cl] [-a name] file [redirection ...] > > > > On Windows you indeed get a useful list of commands and more helpful > tips. > > > > Gabor > > > > > > On Sun, Jun 30, 2019 at 11:36 PM Abby Spurdle <spurdle.a at gmail.com> > wrote: > > > > > > > First time posting in the R mailing lists so hopefully this works > well. > > > > I noticed when I type `R CMD` I get this unhelpful message: > > > > /usr/lib/R/bin/Rcmd: 60: shift: can't shift that many > > > > > > I wasn't able to reproduce this. > > > Maybe it's a Linux thing. > > > But then, I suspect you've omitted some of your input. > > > > > > > I also think it would be nice if `R CMD help` showed the usable > commands. > > > > > > What do you mean... > > > All of the following give you the "usable commands": > > > > > > > R CMD > > > > R CMD -h > > > > R CMD --help > > > > > > [[alternative HTML version deleted]] > > > > > > ______________________________________________ > > > R-devel at r-project.org mailing list > > > https://stat.ethz.ch/mailman/listinfo/r-devel >[[alternative HTML version deleted]]
If you write a lot of R code to run as command line scripts then look at Dirk E's "littler": $ r --help Usage: r [options] [-|file] Launch GNU R to execute the R commands supplied in the specified file, or from stdin if '-' is used. Suitable for so-called shebang '#!/'-line scripts. Options: -h, --help Give this help list --usage Give a short usage message -V, --version Show the version number -v, --vanilla Pass the '--vanilla' option to R -t, --rtemp Use per-session temporary directory as R does -i, --interactive Let interactive() return 'true' rather than 'false' -q, --quick Skip autoload / delayed assign of default libraries -p, --verbose Print the value of expressions to the console -l, --packages list Load the R packages from the comma-separated 'list' -d, --datastdin Prepend command to load 'X' as csv from stdin -L, --libpath dir Add directory to library path via '.libPaths(dir)' -e, --eval expr Let R evaluate 'expr' available from an archive near you... On Mon, Jul 1, 2019 at 8:58 AM Jason Xu <jasonx98 at gmail.com> wrote:> In my humble personal opinion, I try to avoid bash scripts longer than a > couple lines because I find the syntax so obtuse and unintuitive it's > difficult to maintain and write less buggy code. But that is mostly a > reflection of my personal inexperience. > I think the only time a bash script is really needed is for maximum > portability in systems _with bash_. > (I would use python for a wrapper in personal projects, given python comes > pre-installed on many linux systems and OS X, but I completely understand > not wanting to burden Windows users with an extra python dependency to > install.) > > > > > > On Sun, Jun 30, 2019 at 8:08 PM Abby Spurdle <spurdle.a at gmail.com> wrote: > > > In that case, I was wrong. > > And I must apologize... > > > > In saying that, good to see Windows out performing Linux on the command > > line... > > > > > > On Mon, Jul 1, 2019 at 11:30 AM G?bor Cs?rdi <csardi.gabor at gmail.com> > > wrote: > > > > > > For the record, this is Linux R-devel: > > > > > > root at 4bef68c16864:~# R CMD > > > /opt/R-devel/lib/R/bin/Rcmd: 60: shift: can't shift that many > > > root at 4bef68c16864:~# R CMD -h > > > /opt/R-devel/lib/R/bin/Rcmd: 62: exec: -h: not found > > > root at 4bef68c16864:~# R CMD --help > > > /opt/R-devel/lib/R/bin/Rcmd: 62: exec: --help: not found > > > > > > This is R-release on macOS: > > > > > > ? R CMD > > > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: > > > /Library/Frameworks/R.framework/Resources/bin/: is a directory > > > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: > > > /Library/Frameworks/R.framework/Resources/bin/: cannot execute: > > > Undefined error: 0 > > > ? R CMD -h > > > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: -h: > > > invalid option > > > exec: usage: exec [-cl] [-a name] file [redirection ...] > > > ? R CMD --help > > > /Library/Frameworks/R.framework/Resources/bin/Rcmd: line 62: exec: --: > > > invalid option > > > exec: usage: exec [-cl] [-a name] file [redirection ...] > > > > > > On Windows you indeed get a useful list of commands and more helpful > > tips. > > > > > > Gabor > > > > > > > > > On Sun, Jun 30, 2019 at 11:36 PM Abby Spurdle <spurdle.a at gmail.com> > > wrote: > > > > > > > > > First time posting in the R mailing lists so hopefully this works > > well. > > > > > I noticed when I type `R CMD` I get this unhelpful message: > > > > > /usr/lib/R/bin/Rcmd: 60: shift: can't shift that many > > > > > > > > I wasn't able to reproduce this. > > > > Maybe it's a Linux thing. > > > > But then, I suspect you've omitted some of your input. > > > > > > > > > I also think it would be nice if `R CMD help` showed the usable > > commands. > > > > > > > > What do you mean... > > > > All of the following give you the "usable commands": > > > > > > > > > R CMD > > > > > R CMD -h > > > > > R CMD --help > > > > > > > > [[alternative HTML version deleted]] > > > > > > > > ______________________________________________ > > > > R-devel at r-project.org mailing list > > > > https://stat.ethz.ch/mailman/listinfo/r-devel > > > > [[alternative HTML version deleted]] > > ______________________________________________ > R-devel at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel >[[alternative HTML version deleted]]