首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用.csh脚本中的命令行参数执行.csh脚本

如何使用.csh脚本中的命令行参数执行.csh脚本
EN

Stack Overflow用户
提问于 2009-09-17 20:27:29
回答 2查看 24.6K关注 0票数 1

所以我有了.csh脚本generate.csh,我想从里面调用另一个.csh脚本。我试过了

./shell_gen.csh test1 test2.prt

但是它运行shell_gen.csh,但没有命令行参数。

有没有人?

谢谢

generate.csh

代码语言:javascript
复制
#!/bin/csh
./shell_gen.csh test1 test2.prt

shell_gen.csh

代码语言:javascript
复制
#!/bin/csh
set source = output
############################################################
# create pbm-gifs/ directory
############################################################
set destination1 = /scratch/graphics/$1gif
echo making $destination1

if ( ! -e $destination1 ) then
  mkdir $destination1
  foreach file ( $source/*.pgm )
    echo convert $file $destination1/$file:t:r.gif
    convert $file $destination1/$file:t:r.gif
end
else
echo "$destination1/ exists"
endif
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-09-17 20:55:48

我要说的是,当位置参数变量与其他一些字符连接在一起时,您可能需要用大括号将它们括起来:

代码语言:javascript
复制
set destination1 = /scratch/graphics/${1}gif

但你可能也需要一个圆点:

代码语言:javascript
复制
set destination1 = "/scratch/graphics/${1}.gif"

引号和引号可以防止空格。

票数 2
EN

Stack Overflow用户

发布于 2009-09-25 21:40:18

$1gif不是对位置参数的引用。

你有没有按照丹尼斯的建议尝试过${1}gif?我想这应该行得通。

此外,我看不到任何地方引用$2,尽管您的generate显然发送了第二个参数。

最后,第一行可能应该是#!/bin/csh -f

最好的

-pbr

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1441144

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档