Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DO NOT run script file by sh foo-script | 不要以sh foo-script的方式运行脚本 #85

Closed
TSlei opened this issue Oct 30, 2019 · 1 comment

Comments

@TSlei
Copy link

TSlei commented Oct 30, 2019

image

@oldratlee
Copy link
Owner

oldratlee commented Oct 31, 2019

不要以sh foo-script的方式运行脚本。 @TSlei

详细说明如下

不要自己去指定sh的方式去执行脚本 (这个是坏习惯 😄 ) :

  1. 脚本已经是可执行模式的,在里面指定的是bash,操作更简单些。
    脚本中总是声明上确定的shell(如bash)是好的实践: #!/bin/bash
  2. 不同的shell(sh、bash、zsh、fish、csh、tcsh、ksh、ash、dash……)有各种差异,深坑勿入。
    目前主流的是bash/zsh
    更多shell的信息 参见 https://en.wikipedia.org/wiki/Comparison_of_command_shells
  3. sh可能是个符号链接,可能链接到不同的shell,如有的Ubuntu版本,sh是链接到dash的。

推荐直接执行的方式,如:

wget https://github.com/oldratlee/useful-scripts/raw/master/show-busy-java-threads
chmod +x show-busy-java-threads
./show-busy-java-threads

与 Issue #57 (comment) 重复。

@oldratlee oldratlee changed the title 执行报错是咋回事呀 DO NOT use script by sh | 不要使用sh foo.sh的方式去运行脚本 Oct 31, 2019
@oldratlee oldratlee pinned this issue Oct 31, 2019
@oldratlee oldratlee changed the title DO NOT use script by sh | 不要使用sh foo.sh的方式去运行脚本 DO NOT use script by sh | 不要以sh foo-script的方式运行脚本 Oct 31, 2019
@oldratlee oldratlee changed the title DO NOT use script by sh | 不要以sh foo-script的方式运行脚本 DO NOT run script file by sh | 不要以sh foo-script的方式运行脚本 Oct 31, 2019
@oldratlee oldratlee changed the title DO NOT run script file by sh | 不要以sh foo-script的方式运行脚本 DO NOT run script file by sh foo-script | 不要以sh foo-script的方式运行脚本 Feb 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants