各位侠客,下面这段shell代码,老是出错,出错的地方见红色字体,不知道是什么原因呢.
#!/bin/csh
#TWO FILES NEEDED: INPUT FLOW ACCUMULATION AND OUTPUT FLOW DIRECTION
#30 arc-second flow accumulation grid
set ACC=lp_accum.asc
set OUT=lp_flow.asc
#output file is 1/8 degree -- change script for other resolutions
#END OF INPUT
#dump top six lines - get number of ROWS and COLS
head -6 $ACC >! temp_head.junk #无法打开 “temp_head.junk” 读取数据: 没有那个文件或目录
#>!这个符号表示什么意思呢???
set ROWS=`gawk '{if(NR==2) print $2}' temp_head.junk` gawk: 命令行:1: 致命错误: 无法以读模式打开文件“temp_head.junk”(没有那个文件或目录)
set COLS=`gawk '{if(NR==1) print $2}' temp_head.junk`
简单的shell操作老出错
-
- 帖子: 7
- 注册时间: 2011-03-14 12:01
-
- 帖子: 6548
- 注册时间: 2008-10-31 22:12
- 系统: 践兔
- 联系:
Re: 简单的shell操作老出错
代码: 全选
set ROWS=`gawk '{if(NR==2) print $2}' temp_head.junk`
上边的可能是你csh的问题,不懂。
代码: 全选
] ls -ld //
- josephyoung
- 帖子: 158
- 注册时间: 2011-11-05 18:53
- 来自: 南极圈
Re: 简单的shell操作老出错

-
- 帖子: 1453
- 注册时间: 2008-05-24 8:30
Re: 简单的shell操作老出错
在 csh 中,>! 表示输出改向,如果文件已经存在,则覆盖文件。
应该是输出改向,应该是以写方式打开,第一个错误不应该出现,请确认贴到帖子中的代码是你实际采用的代码,最好把原始代码拷贝、粘贴到代码块中。
第二个错误是第一个错误导致的,前面没有生成那个文件,所以打不开。
应该是输出改向,应该是以写方式打开,第一个错误不应该出现,请确认贴到帖子中的代码是你实际采用的代码,最好把原始代码拷贝、粘贴到代码块中。
第二个错误是第一个错误导致的,前面没有生成那个文件,所以打不开。
-
- 帖子: 6548
- 注册时间: 2008-10-31 22:12
- 系统: 践兔
- 联系:
Re: 简单的shell操作老出错
很可能是dir/file的形式,而且dir/不存在aerofox 写了:在 csh 中,>! 表示输出改向,如果文件已经存在,则覆盖文件。
应该是输出改向,应该是以写方式打开,第一个错误不应该出现,请确认贴到帖子中的代码是你实际采用的代码,最好把原始代码拷贝、粘贴到代码块中。
第二个错误是第一个错误导致的,前面没有生成那个文件,所以打不开。
代码: 全选
] ls -ld //