亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 24672930 | 回復(fù): 24672930
打印 上一主題 下一主題

su -c命令與環(huán)境變量的困惑 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2009-02-02 11:18 |只看該作者 |倒序瀏覽
[root@localhost ~]# su - oracle
    [oracle@localhost ~]$ $ORACLE_HOME/a.sh
    this is a.sh
    [oracle@localhost ~]$

上面的命令都正常,但是下面的命令則無法運(yùn)行:
    [root@localhost ~]# su - oracle -c "$ORACLE_HOME/a.sh"
    -bash: /a.sh: 沒有那個文件或目錄
    [root@localhost ~]#

下面的命令也沒問題:
    [root@localhost ~]# su - oracle -c "ls $ORACLE_HOME"
       admin             Disk3    oraInventory    ra_createdb.log     ra_idx01.dbf     ra.sql      
       ship_9204_linux_disk1.cpio.gz
       createrauser.sql  doc      oui             ra_createtable.log  ra_initData.log  scgs_ca.dmp  
       ship_9204_linux_disk2.cpio.gz
       Disk1             jre      procedurel.log  ra_data01.dbf       ra_rbs01.dbf     scgs_km.dmp   
       ship_9204_linux_disk3.cpio.gz
       Disk2             oradata  product         ra_data02.dbf       ra_scgs.dmp      scgs_ra.dmp  temp01.dbf
[root@localhost ~]#

誰能告訴我這是為什么?先謝過了。

論壇徽章:
2
丑牛
日期:2014-06-11 13:55:04ChinaUnix元老
日期:2015-02-06 15:16:14
2 [報告]
發(fā)表于 2009-02-02 11:28 |只看該作者
su - uid -c 命令不自動執(zhí)行.profile腳本

你可以在a.sh加一行執(zhí)行一下

論壇徽章:
0
3 [報告]
發(fā)表于 2009-02-02 13:14 |只看該作者
命令su - oracle -c "$ORACLE_HOME/a.sh"是在當(dāng)前的Shell下執(zhí)行的,因為root shell下面沒有定義ORACLE_HOME,所以上面命令相當(dāng)于su - oracle -c "/a.sh"

su - oracle -c "ls $ORACLE_HOME"中的命令 ls $ORACLE_HOME是切換到oracle用戶環(huán)境下執(zhí)行的,所以沒問題。

2樓說的不對 su - oracle -c "command" 是會調(diào)用oracle的配置文件的,su  oracle -c "command"才不調(diào)用。

論壇徽章:
0
4 [報告]
發(fā)表于 2009-02-02 14:38 |只看該作者
3樓的:
su - oracle -c "ls $ORACLE_HOME"是在用戶oracle的環(huán)境下執(zhí)行的,這很好理解。
為什么su - oracle -c "$ORACLE_HOME/a.sh"是在root的Shell下執(zhí)行的?

論壇徽章:
2
丑牛
日期:2014-06-11 13:55:04ChinaUnix元老
日期:2015-02-06 15:16:14
5 [報告]
發(fā)表于 2009-02-02 14:57 |只看該作者

回復(fù) #3 slurker 的帖子

謝謝3樓指正,我看錯了

論壇徽章:
0
6 [報告]
發(fā)表于 2009-02-02 15:56 |只看該作者
原帖由 pantaiyang 于 2009-2-2 14:38 發(fā)表
3樓的:
su - oracle -c "ls $ORACLE_HOME"是在用戶oracle的環(huán)境下執(zhí)行的,這很好理解。
為什么su - oracle -c "$ORACLE_HOME/a.sh"是在root的Shell下執(zhí)行的?


我的意思是整條命令su - oracle -c "$ORACLE_HOME/a.sh"是你在root的shell下敲的,
所以命令里面變量$ORACLE_HOME被替換成值,就成了su - oracle -c "/a.sh",
就是-c 后面跟著的字符串在傳遞給oracle前已經(jīng)被處理過了,已經(jīng)變成了"/a.sh";
你第二條命令里oracle用戶執(zhí)行的也不是 ls $ORACLE_HOME,其實執(zhí)行的命令是ls,顯示的是oracle用戶主目錄下的東東
不信你可以把oracle profile里的ORACLE_HOME改為/tmp試一下,命令su - oracle -c "ls $ORACLE_HOME"顯示的內(nèi)容和現(xiàn)在
一樣,不會是/tmp下的內(nèi)容

不知道說清楚了沒有。

[ 本帖最后由 slurker 于 2009-2-2 15:58 編輯 ]

論壇徽章:
0
7 [報告]
發(fā)表于 2009-02-02 17:49 |只看該作者
原帖由 slurker 于 2009-2-2 15:56 發(fā)表


我的意思是整條命令su - oracle -c "$ORACLE_HOME/a.sh"是你在root的shell下敲的,
所以命令里面變量$ORACLE_HOME被替換成值,就成了su - oracle -c "/a.sh",
就是-c 后面跟著的字符串在傳遞給oracle前已 ...


LZ敲的是: su - oracle 那么 -, -l,--login 會創(chuàng)建一個login shell

論壇徽章:
0
8 [報告]
發(fā)表于 2009-02-02 19:28 |只看該作者

回復(fù) #1 pantaiyang 的帖子

su -l oracle 命令

論壇徽章:
0
9 [報告]
發(fā)表于 2009-02-02 19:39 |只看該作者
原帖由 kns1024wh 于 2009-2-2 19:28 發(fā)表
su -l oracle 命令


su -l oracle command是不行的,在su手冊中,su后跟命令必須使用-c 來指定
  -c, --commmand=COMMAND
              pass a single COMMAND to the shell with -c

論壇徽章:
11
金牛座
日期:2015-03-19 16:56:22數(shù)據(jù)庫技術(shù)版塊每日發(fā)帖之星
日期:2016-08-02 06:20:00數(shù)據(jù)庫技術(shù)版塊每日發(fā)帖之星
日期:2016-04-24 06:20:00數(shù)據(jù)庫技術(shù)版塊每日發(fā)帖之星
日期:2016-04-13 06:20:00IT運(yùn)維版塊每日發(fā)帖之星
日期:2016-04-13 06:20:00數(shù)據(jù)庫技術(shù)版塊每日發(fā)帖之星
日期:2016-02-03 06:20:00數(shù)據(jù)庫技術(shù)版塊每日發(fā)帖之星
日期:2015-08-06 06:20:00季節(jié)之章:春
日期:2015-03-27 15:54:57羊年新春福章
日期:2015-03-27 15:54:37戌狗
日期:2015-03-19 16:56:41數(shù)據(jù)庫技術(shù)版塊每日發(fā)帖之星
日期:2016-08-18 06:20:00
10 [報告]
發(fā)表于 2009-02-02 21:17 |只看該作者

回復(fù) #1 pantaiyang 的帖子

這個應(yīng)該是SHELL的問題..
在shell中,變量會先轉(zhuǎn)換....在這里$ORACLE_HOME 由于在root用戶下未定義,故為空,則$ORACLE_HOME/a.sh變成了/a.sh
因為$ORACLE_HOME為空嘛..
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP