su -c 不支持通配符吗?

haisenmai 2018-12-29 10:45:40
脚本
vim su.sh

#!/bin/sh
su - oracle -c " a=`ls *.sql`; echo $a"


执行:
[root@localhost test]# sh su.sh
ls: 无法访问*.sql: 没有那个文件或目录
...全文
744 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
haisenmai 2019-01-08
  • 打赏
  • 举报
回复
引用 4 楼 ckc 的回复:
刚测试了一下,`ls *.sql`是当场就解析了,所以还是写个脚本再调用脚本吧
我写的是脚本, 3楼的兄弟写的可以成功。 是不能放到su -oracle -c 里面去定义变量,要单独定义变量a吧
ckc 2019-01-01
  • 打赏
  • 举报
回复
刚测试了一下,`ls *.sql`是当场就解析了,所以还是写个脚本再调用脚本吧
haisenmai 2018-12-29
  • 打赏
  • 举报
回复
有的 [oracle@localhost ~]$ ll *.sql -rw-r--r-- 1 oracle oinstall 34 12月 29 09:43 jhqzV28.sql
引用 1 楼 ckc 的回复:
ls的时候没找到*.sql文件,oracle的home目录下有*.sql文件吗?
ckc 2018-12-29
  • 打赏
  • 举报
回复
ls的时候没找到*.sql文件,oracle的home目录下有*.sql文件吗?
常书 2018-12-29
  • 打赏
  • 举报
回复
#!/bin/sh
a=`ls *.sql`;
su - oracle -c " echo $a"

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧