Bashで関数を作成して呼び出す方法
Bashで関数を作成して呼び出す方法に関するクイックガイド。
関数は、何らかのアクションを実行するために使用される再利用可能なコードのブロックです。関数を使用すると、モジュール性が向上し、コードが高度に再利用されます。
Bashは、echo
などのいくつかの組み込み関数を提供します およびread
、ただし、独自の関数を作成することもできます。
Bashで関数を作成する方法は2つあります。
1つの方法は、関数名を使用することです。例:
functionName(){
// scope of function
}
コンパクトバージョン:
functionName(){ echo "hello"; }
もう1つの方法は、function
を使用して関数を宣言することです。 キーワード:
function functionName {
// scope of function
}
コンパクトバージョン:
function functionName { echo "hello"; }
()
が必要ないことに注目してください function
を使用する場合 関数を作成するためのキーワード。
Bash関数に関する注意事項:
- 中括弧の間のコード
{}
関数本体とスコープです - 関数を呼び出すときは、bashスクリプトのどこからでも関数名を使用します
- 関数は、使用する前に定義する必要があります
- コンパクトバージョンを使用する場合、最後のコマンドにはセミコロン
;
を付ける必要があります
例:
次のコードは、「HelloWorld」をコンソールに出力する関数を作成します。関数の名前はprintHelloと呼ばれます :
#!/bin/bash
printHello(){
echo "Hello World!"
}
上記の関数をどのように呼び出すのですか? bashスクリプトで行う必要があるのは、関数の名前を記述することだけで、関数が呼び出されます。
例:
#!/bin/bash
printHello(){
echo "Hello World!"
}
# Call printHello function from anywhere in the script by writing the name
printHello
出力:
"Hello World"
上記の関数printHello()
パラメータはありません。これを呼び出すと、「HelloWorld」という出力が得られます。しかし、もっと一般的な関数を作成したい場合はどうでしょうか?たとえば、引数を指定して関数を呼び出すと、送信した内容が出力されます。
これを行うには2つの方法があります。
まず、printHello()
を変更できます 渡された引数を出力する関数:
例:
#!/bin/bash
printAny(){
echo "Hello " $1
}
printAny World
printAny DevQa
printAny I love coding!
出力:
Hello World
Hello DevQA
Hello I
3番目の印刷ステートメントprintAny I love coding!
「Hello、I」のみを出力しました。
これは、関数が1つのパラメーター$1
のみを取るように設計されているためです。 。 「コーディングが大好き!」という言葉実際には3つのパラメータです。
すべてを印刷したい場合は、テキストを引用符で囲む必要があります
例:
#!/bin/bash
printAny(){
echo "Hello " $1
}
printAny "I love coding!"
出力:
Hello I love coding
別の例として、数字を渡すこともできます:
#!/bin/bash
add() {
result=$(($1 + $2))
echo "Result is: $result"
}
add 1 2
出力:
Result is: 3
Bash関数も値を返すことができます。
例:
#!/bin/bash
add() {
result=$(($1 + $2))
}
add 1 2
echo "The sum is: "$result
出力:
The sum is: 3
関数から値を返す別の方法は、必要に応じて使用できる変数に結果を割り当てることです。
例:
#!/bin/bash
add () {
local result=$(($1 + $2))
echo "$result"
}
result="$(add 1 2)"
echo "The sum is: "$result
出力:
The sum is: 3
-
カスタムExcel関数を作成する方法
Microsoft Excel 私たちのために最大の仕事をする多くの事前定義された関数が付属しています。ほとんどの場合、組み込み関数以外の関数は必要ありません。しかし、事前定義されたExcel関数では提供されていなかった機能が必要な場合はどうなりますか? Microsoft Excelを使用すると、カスタムExcel関数を作成できます。 またはユーザー定義関数 VBAを使用する 。必要な機能を備えたカスタムExcel関数を作成でき、「=」の後に関数名を使用して、通常のExcel関数としてExcelシートでアクセスできます。 VBAを使用してカスタムExcel関数を作成する手順を説明します
-
Linuxでエイリアスとシェル関数を作成するにはどうすればよいですか?
GNU / Linuxシステムを最大限に活用したい場合は、コマンドプロンプトとシェルスクリプトを知っておく必要があります。コマンドラインで動作するコマンドが多いほど、使用されているコマンドの大部分が非常に多いことがわかります。使用可能なコマンドの小さなサブセット。ほとんどのタスクは習慣的であり、ユーザーはこれらを毎日同じ方法で実行できます。 最も一般的なコマンドユーティリティの多くのメーカーは、短縮名を使用して無関係な入力を排除しようとしています。リストの代わりに「ls」と入力します 」&change-directoryの代わりに「 cd」と入力します 」。さらに、多くのLinuxユーザー