对不起,如果标题含糊不清,我不知道该用什么术语。这是我的问题。我使用以下代码位快捷输入/输出位置等:

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/c/Wgs/)两次,因此在一个不存在的位置找不到.Tif文件?
如果有人问,.tif文件肯定在$BASE位置。

最佳答案

不知何故,您重写了$HOME变量;可能是偶然的。
启动一个干净的外壳,看看HOME是否正确。如果是的话,那么你就完成了(或者是你的脚本完成了)。如果不是,那么您的.profile.bash_profile.bashrc或您的shell使用的任何东西都有问题。
如果不能立即找到问题的原因,可以暂时解决:

export HOME=/home/user

09-27 19:41