2

Rmarkdown を使用して bash コードを表示しています。

---
title: "Untitled"
author: "JPD"
date: "20 December 2016"
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

```{r gp.setup, engine= 'bash', eval=FALSE}

##Change names to remove dots
g.rename raster=gp_ortho.1,gp_ortho_1,gp_ortho.2,gp_ortho_2,\
gp_ortho.3,gp_ortho_3

##Group bands together
i.group --verbose group=gp_combo input=gp_ortho_1@gp1,gp_ortho_2@gp1,\
gp_ortho_3@gp1
```

ただし、html に編むと、g.rename 行はほとんど消えます。比較のために、下の i.group コマンドは正しく表示されます。

編まれた

これを行っているコードの g.rename 行についてはどうですか? ですか.

4

1 に答える 1

3

bashは、ドット/ピリオド ( .) をコマンドとして扱い、その後に続くものを実行します。そのため、リテラル文字を出力する代わりに1、、、2および3.

セッションを開始せずに動作するように GRASS をセットアップしていませんが、それを行うと、スクリプトはg.renameコマンドを正しく解釈し、指定したラスター ファイルを探します。

GRASSはあなたのRmarkdownファイルに設定されていないと思いますので、g.rename...文字を印刷して実行するファイルとして扱うだけな.ので、次のものは印刷されません。正しく印刷するには、ファイル名以外の何かを使用するか、コマンドとして.理解できるように Rmarkdown セッションを設定するか、次のように文字をエスケープします。g.rename\

```{r gp-setup, engine="bash", eval=FALSE}
# Change names to remove dots

g.rename raster=gp_ortho\.1,gp_ortho_1,gp_ortho\.2,gp_ortho_2, \
gp_ortho\.3,gp_ortho_3

## Group bands together
i.group --verbose group=gp_combo input=gp_ortho_1@gp1,gp_ortho_2@gp1, \
gp_ortho_3@gp1
```
于 2016-12-20T23:26:33.273 に答える