相关疑难解决方法(0)

哪个 shell 解释器运行一个没有 shebang 的脚本?

假设我帐户的默认 shell 是 zsh,但我打开了终端并启动了 bash 并执行了一个名为 的脚本prac002.sh,哪个 shell 解释器将用于执行脚本,zsh 还是 bash?考虑以下示例:

papagolf@Sierra ~/My Files/My Programs/Learning/Shell % sudo cat /etc/passwd | grep papagolf
[sudo] password for papagolf: 
papagolf:x:1000:1001:Rex,,,:/home/papagolf:/usr/bin/zsh
# papagolf's default shell is zsh

papagolf@Sierra ~/My Files/My Programs/Learning/Shell % bash
# I fired up bash. (See that '%' prompt in zsh changes to '$' prompt, indicating bash.)

papagolf@Sierra:~/My Files/My Programs/Learning/Shell$ ./prac002.sh 
Enter username : Rex
Rex
# Which interpreter did it just use?
Run Code Online (Sandbox Code Playgroud)

**编辑:** 这是脚本的内容

papagolf@Sierra ~/My Files/My Programs/Learning/Shell …
Run Code Online (Sandbox Code Playgroud)

shell bash zsh shell-script shebang

23
推荐指数
2
解决办法
1万
查看次数

标签 统计

bash ×1

shebang ×1

shell ×1

shell-script ×1

zsh ×1