作者ToyotaPrius (頭又大批4)
看板Linux
標題[問題] c shell script不會return
時間Tue Nov 28 14:51:44 2017
最近剛學寫shelll script本身學過 c和java
是有程式的背景的
#! /bin/csh
echo "Hello World! \a \n"
exit 0
寫了一個hello world
Script確實會show “hello world,” 也會停止
但在我朋友的帳號上卻不會終止
要手動ctrl+c把他停掉
但如果把第一行指定成sh就會終止
#! /bin/sh
用set指令去看,預設的shell也確實是/bin/csh
我和朋友在同一台server上,目前想不到為什麼
特來請教各位linux老手
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.246.74.52
※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1511851907.A.159.html
推 filiaslayers: 預設的shell跟你/bin/sh對到的shell不一定一樣啊 11/28 15:24
→ ToyotaPrius: 可是我有指定 #! /bin/csh 11/28 15:29
→ nylon419: cat /etc/passwd 抓一下你們的帳號是否一致? 11/28 15:36
推 rickieyang: 用 #!/bin/csh -x 跑跑看 11/28 15:48
→ ToyotaPrius: -x 還是不行,而且還連echo那行跟exit那行都印出來了 11/28 16:03
→ ToyotaPrius: /etc/passwd 我多一行qemu的東西 11/28 16:09
→ ToyotaPrius: 發現 #! /bin/csh -f就可以了 但為何? 11/28 17:58
→ ToyotaPrius: 其他人都不會 只有我要加上-f 而且也不好叫每個寫好 11/28 17:59
→ ToyotaPrius: 的script都加上去 11/28 17:59
推 kenduest: 那查一下是否. cshrc 這類檔案影響設定 11/28 18:35
→ ToyotaPrius: 有試過把cshrc拿掉,還是無法 11/28 20:27
→ hijkxyzuw: 用 sh 吧,別用 csh 11/28 20:31
→ rickieyang: 好像有什麼誤會,-x 本來就只是 debug 用的,不是加上 11/29 00:10
→ rickieyang: 就可以跑了. 11/29 00:10
推 rickieyang: -f Fast start. Reads neither the .cshrc file, nor 11/29 00:24
→ rickieyang: the .login file 11/29 00:24
→ rickieyang: 查一下這兩個檔案 11/29 00:24
→ ToyotaPrius: 查過.cshrc應該沒問題,然後沒有.login檔案 11/29 01:21
→ ToyotaPrius: 樓上猛 樓上硬 真的是它造成的 11/29 11:46
→ ToyotaPrius: 拿掉.history就ok 11/29 11:47
推 kenduest: 好有趣。問一下你的home在nfs上,或是與網路帳號環境是 11/29 21:38
→ kenduest: 嗎? 11/29 21:38