0

抱歉,如果标题含糊不清,我不确定要使用什么术语。这是我的问题。我使用以下代码位来快捷输入/输出位置等:

BASE=~/J/ca/wgs
INPUT=~/J/ca/wgs/shps
OUTPUT=~/J/ca/wgs/rasters
SCRIPT=~/J/ca/wgs/scripts

gdal_translate $BASE/wgsraster.tif $OUTPUT/rast_1.tif

运行 gdal_translate 时出现以下错误:

ERROR 4: `/home/user/J/ca/wgs/J/ca/wgs/wgsraster.tif' does not exist in the file system, and is not recognised as a supported dataset name.

为什么 bash shell 两次读取文件路径 (/J/ca/wgs/) 并因此在不存在的位置找不到 .tif 文件?

万一有人问,.tif 文件肯定在 $BASE 位置。

4

1 回答 1

2

你已经$HOME以某种方式覆盖了你的变量;可能是偶然的。

启动一个干净的外壳,看看HOME那里是否正确。如果是,那么你就完成了(或者是你的脚本在做这件事)。如果没有,那么您的.profileor.bash_profile.bashrc或您的 shell 使用的任何东西都有问题。

如果您无法立即找到问题的原因,您可以暂时修复它:

export HOME=/home/user
于 2012-08-08T09:14:10.700 回答