QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 683|回复: 5

请大家帮个忙,解答一下

[复制链接]
发表于 2004-7-19 10:36:32 | 显示全部楼层 |阅读模式
是关于特殊变量的
#!/bin/bash
case $0 in
*listtar) TARGS="-tvf $1"  ;;
*maketar)TARGS="-cvf $1.tar $1" ;;
esac
tar STARGS

$0到底起什么作用啊??书上说是 “$0通常被用来决定那些能够被多个名称调用的脚本的状态。”大虾们能不能给我解释的在具体点
还有$1的问题,不太明白


还有一个脚本

#!/bin/bash
case $0 in
*listtar) TARGS="-tvf $1"  ;;
*maketar) TARGS="-cvf $1.tar $1" ;;
*) echo "Usage :$0 [file|directory]" exit 0 ;;
esac


exit 0这个起什么作用啊??


问题比较多,多谢大家了
发表于 2004-7-19 13:35:27 | 显示全部楼层
对shell编程不熟。
我看介绍是 $0 :holds the name of the script typed the common line
$1...9 contain the first through ninth command line parameters, respectively.
回复

使用道具 举报

发表于 2004-7-19 13:45:57 | 显示全部楼层
$x为命令行位置参数,$0指运行程序本身的名字,$1...9是后续参数,如你的脚本名为yourcode,在运行命令
yourcode demo 4 test
时,$0=yourcode,$1=demo,$2=4,$3=test。

更多参数时以此类推。
回复

使用道具 举报

 楼主| 发表于 2004-7-19 23:22:22 | 显示全部楼层
多谢斑竹了
顺便问一句,有没有关于shell编程的专门的板块阿
我对shell比较感兴趣,却没有找到合适的板块,我的问题有比较多,所以就都发到这里来问了,还请斑竹多体谅吧
回复

使用道具 举报

 楼主| 发表于 2004-7-19 23:54:11 | 显示全部楼层
[quote:0bbe3bed60="lanche"]$x为命令行位置参数,$0指运行程序本身的名字,$1...9是后续参数,如你的脚本名为yourcode,在运行命令
yourcode demo 4 test
时,$0=yourcode,$1=demo,$2=4,$3=test。

更多参数时以此类推。[/quote]

呵呵,还是有一个问题,就在我的第一个帖子里面
那个exit 0是什么意思啊
还是不明白,是退出0吗?
0代表什么意思呢??
回复

使用道具 举报

发表于 2004-7-20 12:43:34 | 显示全部楼层
在哪个帖子里?

exit 0是退出当前进程并返回0,表示无错误。

在 www.linuxsir.org 上有专门的shell编程版块,公社有没有我不清楚。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-7 21:09 , Processed in 0.040452 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表