GNU/Linux >> Linux の 問題 >  >> Linux

「functionFoo(){}」と「foo(){}」の違いは?

bashを定義できます functionを使用または省略した関数 キーワード。違いはありますか?

#!/bin/bash

function foo() {
  echo "foo"
}

bar() {
  echo "bar"
}

foo

bar

関数fooへの両方の呼び出し およびbar 成功し、違いはわかりません。ですから、読みやすさを向上させるためだけなのか、それとも何か足りないものがあるのでしょうか…

ところで、dashのような他のシェルでは (/bin/sh dashにシンボリックリンクされています debian / ubuntuで)functionを使用すると失敗します キーワード。

承認された回答:

2番目のバージョンの方が移植性が高いという事実を除けば、AFAIKに違いはありません。


Linux
  1. ログインシェルと非ログインシェルの違いは?

  2. 2>&-、2> / dev / null、|&、&> / dev/nullと>/dev / null 2>&1の違いは?

  3. Sudo Su –とSudo Su —の違いは何ですか?

  1. EotとEofの違いは?

  2. [0-9]、[[:digit:]]とDの違いは?

  3. GtkとQtアプリケーションの違いは?

  1. ブロックサイズとクラスターサイズの違いは?

  2. 配管とコマンド拡張の違いは?

  3. NssとPamの違いは?