有什么办法让$@的每一个参数都加上一个双引号

sh/bash/dash/ksh/zsh等Shell脚本
回复
头像
fanhe
帖子: 2357
注册时间: 2007-03-24 23:45

有什么办法让$@的每一个参数都加上一个双引号

#1

帖子 fanhe » 2010-01-16 18:03

如题,我本来想用个for分解出来加双引号然后再拼接在一起的,但是忘了bash怎么拼接字符串了
那么有没有简洁的方法?
头像
yingfei
帖子: 273
注册时间: 2007-09-03 18:34
来自: 羊城通

Re: 有什么办法让$@的每一个参数都加上一个双引号

#2

帖子 yingfei » 2010-01-16 19:27

代码: 全选

echo $@ | sed -e 's/^/"/; s/$/"/; s/ /" "/'
这个简单。 不过 对参数中有空格的情况不适用。
  • Ubuntu 10.10 ~
头像
fanhe
帖子: 2357
注册时间: 2007-03-24 23:45

Re: 有什么办法让$@的每一个参数都加上一个双引号

#3

帖子 fanhe » 2010-01-17 11:39

回忆起来了,肯定要处理路径有空格的情况的
最后还是写了一个for来拆开再组合
头像
weilichun
帖子: 218
注册时间: 2007-09-09 15:41
来自: Beijing
联系:

Re: 有什么办法让$@的每一个参数都加上一个双引号

#4

帖子 weilichun » 2010-01-17 11:50

干吗不用shift去遍历
DerekTan
帖子: 33
注册时间: 2007-05-22 10:48
联系:

Re: 有什么办法让$@的每一个参数都加上一个双引号

#5

帖子 DerekTan » 2010-01-18 8:52

weilichun 写了:干吗不用shift去遍历
顶这个~~ :em05
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 有什么办法让$@的每一个参数都加上一个双引号

#6

帖子 eexpress » 2010-01-18 9:35

$@ 你是怎么来的,这才重要。
● 鸣学
回复