shell中$1赋值给变量,此变量却是空的,为什么? 10
FileName=$1echo$1>>/Users/beartech/Desktop/log.textecho$FileName>>/Users/beartech/Des...
FileName = $1
echo $1 >> /Users/beartech/Desktop/log.text
echo $FileName >> /Users/beartech/Desktop/log.text
这个几行代码,$1不为空,但是赋值给FileName,FileName却是空的,为什么啊?
自己找到答案了:
原因是头部问题
#!/bin/sh 修改成 #!/bin/bash 就好了 展开
echo $1 >> /Users/beartech/Desktop/log.text
echo $FileName >> /Users/beartech/Desktop/log.text
这个几行代码,$1不为空,但是赋值给FileName,FileName却是空的,为什么啊?
自己找到答案了:
原因是头部问题
#!/bin/sh 修改成 #!/bin/bash 就好了 展开
4个回答
推荐于2018-05-09 · 知道合伙人互联网行家
关注
展开全部
为了解决用户可能碰到关于"shell中$1赋值给变量,此变量却是空的,为什么?"相关的问题,突袭网经过收集整理为用户提供相关的解决办法,请注意,解决办法仅供参考,不代表本网同意其意见,如有任何问题请与本网联系。"shell中$1赋值给变量,此变量却是空的,为什么?"相关的详细问题如下: Users/ /log;Desktop/,$1不为空;beartech/.text
echo $FileName >.text
这个几行代码,FileName却是空的;Users/,为什么啊;log;>beartech/ /FileName = $1
echo $1 >,但是赋值给FileName;>Desktop/
echo $FileName >.text
这个几行代码,FileName却是空的;Users/,为什么啊;log;>beartech/ /FileName = $1
echo $1 >,但是赋值给FileName;>Desktop/
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
./表示执行当前目录下某个可执行文件,这个文件不一定是bash脚本,但是sh方式就只能执行shell脚本,如果一个二进制可执行程序你用sh ./binExample这种方式执行,会报错的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
get_msisdn()
{
CMONTH=`date +%m`
day=`date +%Y%m%d`
echo $day
echo "select goodsname from goods_info_08 where goodsname like '%SVC_20110816351%';" > /idep/test/query.sql
sqlplus idep_admin@idepdb/sxdb9876 @/idep/test/query.sql<<!
/
exit
!
}
### main ####
CHECK_DIR=/idep/test
get_msisdn
结果:
GOODSNAME
--------------------------------------------------------------------------------
SVC_20110816351
SVC_20110816351
SVC_20110816351
SVC_20110816351
SQL>
GOODSNAME
--------------------------------------------------------------------------------
SVC_20110816351
SVC_20110816351
SVC_20110816351
SVC_20110816351
SQL> Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
为什么会出现2次结果?
如何把输出的结果赋值给一个变量?
{
CMONTH=`date +%m`
day=`date +%Y%m%d`
echo $day
echo "select goodsname from goods_info_08 where goodsname like '%SVC_20110816351%';" > /idep/test/query.sql
sqlplus idep_admin@idepdb/sxdb9876 @/idep/test/query.sql<<!
/
exit
!
}
### main ####
CHECK_DIR=/idep/test
get_msisdn
结果:
GOODSNAME
--------------------------------------------------------------------------------
SVC_20110816351
SVC_20110816351
SVC_20110816351
SVC_20110816351
SQL>
GOODSNAME
--------------------------------------------------------------------------------
SVC_20110816351
SVC_20110816351
SVC_20110816351
SVC_20110816351
SQL> Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
为什么会出现2次结果?
如何把输出的结果赋值给一个变量?
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
FileName=$1
赋值语句中不能有空格. 看看是不是这个问题.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询