免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 2576 | 回复: 17
打印 上一主题 下一主题

提个问题:怎么能把*号,不是作为通配符的意义,做脚本参数 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-09-16 14:08 |只看该作者 |倒序浏览
不是做通配符的意思,而是做为普通字符
做shell脚本的输入参数了

ex:
file 1.ksh
#!/bin/ksh
echo $1

1.ksh "*.sql"

论坛徽章:
0
2 [报告]
发表于 2003-09-16 14:12 |只看该作者

提个问题:怎么能把*号,不是作为通配符的意义,做脚本参数

\*.sql

论坛徽章:
0
3 [报告]
发表于 2003-09-16 14:26 |只看该作者

提个问题:怎么能把*号,不是作为通配符的意义,做脚本参数

这样传递进去的参数是\*.sql
而不是转义以后的*.sql

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
4 [报告]
发表于 2003-09-16 14:33 |只看该作者

提个问题:怎么能把*号,不是作为通配符的意义,做脚本参数

  1. '*.sql'
复制代码

例如:

  1. cat aa.sh
  2. printf "%s\n" "$1"

  3. aa '*.sql'
  4. *.sql
复制代码

论坛徽章:
0
5 [报告]
发表于 2003-09-16 14:40 |只看该作者

提个问题:怎么能把*号,不是作为通配符的意义,做脚本参数

那还是没放到变量里面去,怎么放到变量里面去?
arg=printf "%s\n" "$1"
引用 $arg?

论坛徽章:
0
6 [报告]
发表于 2003-09-16 14:42 |只看该作者

提个问题:怎么能把*号,不是作为通配符的意义,做脚本参数


  1. ex:
  2. f.ksh
  3. #!/bin/ksh
  4. find . -name "$1"
复制代码


f.ksh "*.sql"

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
7 [报告]
发表于 2003-09-16 14:47 |只看该作者

提个问题:怎么能把*号,不是作为通配符的意义,做脚本参数

原帖由 "loaddown" 发表:
那还是没放到变量里面去,怎么放到变量里面去?
arg=printf "%s\n" "$1"
引用 $arg?

  1. arg="$1"
  2. printf "%s\n" "$arg"  
复制代码

论坛徽章:
0
8 [报告]
发表于 2003-09-16 14:49 |只看该作者

提个问题:怎么能把*号,不是作为通配符的意义,做脚本参数

在线等待中。。。:)

论坛徽章:
0
9 [报告]
发表于 2003-09-16 14:52 |只看该作者

提个问题:怎么能把*号,不是作为通配符的意义,做脚本参数

可以了,可以把
printf的输出给屏蔽掉吗?
就是不格式化打印到标准输出上。
3ks!!

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-01-24 06:20:00
10 [报告]
发表于 2003-09-16 14:53 |只看该作者

提个问题:怎么能把*号,不是作为通配符的意义,做脚本参数

  1. $cat 1.ksh
  2. #!/bin/ksh
  3. echo $1
  4. $1.ksh *.sql
  5. *.sql
  6. $1.ksh \*.sql
  7. *.sql
  8. $1.ksh "*.sql"
  9. *.sql
  10. $1.ksh '*.sql'
  11. *.sql
复制代码

刚才试了下的结果,soloaris8, ksh,除了第一写法在当前目录下有.sql文件存在会有问题外,其他应该都可以啊@@
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP