關於shell切換的問題 - Linux

Eden avatar
By Eden
at 2012-03-30T13:04

Table of Contents

各位好

想請問一下

我有一個test.sh

其中test.sh的第1行有#!/bin/bash來表示我要切換到bash來執行

如果我的shell預設的是/bin/tcsh

用./test.sh #用tcsh shell去執行,執行過程中切換到bash執行
然後再換成 sh ./test.sh #用sh shell去執行,執行過程中切換到bash執行

這兩種方式都是用bash shell去執行程式碼

但是結果卻不一樣...

想請問為什麼會這樣?

我的程式碼如下:

#!/bin/bash

j=0
read -p "number" num
number[$j]="$num"

用sh test.sh 會出現 number[0]=5: not found #可是我第1行有#!/bin/bash...

用./test.sh則執行結果正常 #都是切換到bash 為什麼這一行就正常?

另外想請教的是

似乎tcsh跟sh都不支援這樣的陣列寫法

再網路上看到的幾乎都是bash的寫法

看到這篇

http://yuanann.pixnet.net/blog/post/14988564-shell_script-%3Aarray-

照他的寫法寫也沒辦法用sh執行阿...一樣出現not found

請問有什麼寫法可以支援sh或tcsh呢?

謝謝

--
~宅男的四個徵兆~
∠□ ○ ! * \○/ ★    (○ ?
╦╦└□ " ○□═ □   □>
║║√√ ╦══╦ ∥    |\
一回家就上PTT 每天想正妹 以當好人為樂 忘記正妹虧欠自己

--
Tags: Linux

All Comments

Robert avatar
By Robert
at 2012-04-01T15:45
./script是讓作業系統自己選要用哪一個shell,在這裡是bash
sh script你就直接選用/bin/sh來跑了,不會看#!那一行
Regina avatar
By Regina
at 2012-04-06T00:52
原來如此
Brianna avatar
By Brianna
at 2012-04-07T21:45
所以用./script的話 就會看#!那一行嘛?
Isla avatar
By Isla
at 2012-04-09T07:25
是啊
Frederica avatar
By Frederica
at 2012-04-12T07:13
那請問一下 如果我在sh用array的話 要怎麼使用呢?
Doris avatar
By Doris
at 2012-04-16T13:47
c shell系例和 bourne shell不太可以相通
Olive avatar
By Olive
at 2012-04-16T19:31
sh沒有array, 頂多是把a1, a2, a3, a4之類的變數當array用
Xanthe avatar
By Xanthe
at 2012-04-19T18:46
Thanks a lot
Dinah avatar
By Dinah
at 2012-04-21T10:04
sh不一定等於bash 像ubuntu的sh是dash

編譯VLC時出現問題....

Anonymous avatar
By Anonymous
at 2012-03-29T18:11
大家好, 小弟在編譯VLC時出現底下的錯誤訊息 configure: error: Package and#39;libpostprocand#39; requires and#39;libavutil = 51.7.0and#39; but version of libavutil is 51.44.10 ...

瀏覽器影片膚色變藍

Rosalind avatar
By Rosalind
at 2012-03-29T17:34
請問我用瀏覽器firefox chrome看影片 人物膚色全都變成藍色的 但是將影片下載下來卻又正常@@ 驅動程式也更新了 還是無解 請問版友有遇到這種情況嗎? ubuntu 11.10 nvidia gts 450 -- http://tw.news.yahoo.com/040217/19/gep2 ...

pietty 自動送出ctrl-c

Faithe avatar
By Faithe
at 2012-03-29T14:31
小弟使用pietty用滑鼠選取範圍時會自動複製內容的功能時 但都會對主機送出ctrl-c指令 請問要怎麼樣複製內容但不送出ctrl+c呢? - ...

大家會習慣將linux昇到最新嗎

Erin avatar
By Erin
at 2012-03-29T11:00
我用gentoo linux 個人經驗,這种portage的安裝方式 要勤更新 不然如果一兩年才打算升級 一些相依就很難處理,不但卡卡的,困難重重 最後都是做一個最新的系統再移資料還比較快 ※ 引述《sunfox (文思南)》之銘言: : 就 單存的架站 : web ftp ...

Linux耗電

Carol avatar
By Carol
at 2012-03-29T06:09
※ 引述《pm429015 (Stanley)》之銘言: : 經過了我的一番實驗 我發現同樣的比電 win7實在是比linux 持久大概一小時 : 尤其Kernel 升級到3開頭後 : 我試過很多版本 連tiny core 或者 puppy 這種輕量級的都一樣 : 我也把 CPU 調成powersave 那個 ...