シェルスクリプトのコマンドを定期的に実行して、その結果を保存しておきたいコードを書きたかったので、ChatGPTに聞いてみました。
回答:
シェルスクリプトであるコマンドの実行結果を変数に代入するためには、次のように書くことができます。
#!/bin/bash
# コマンドの実行結果を変数に代入
result=$(ls)
# 結果の出力
echo "$result"
この例では、ls コマンドの結果が result という変数に代入されています。$(コマンド) の形式で記述することで、コマンドの実行結果を変数に代入することが可能です。
同じように任意のコマンドを使用して結果を変数に保存することが可能です。例えば、現在の日付を取得してそれを変数に保存したい場合は次のように書くことができます。
#!/bin/bash
# 日付コマンドの実行結果を変数に代入
today=$(date)
# 結果の出力
echo "$today"
このスクリプトは date コマンドを実行し、その結果を today 変数に保存します。そしてその結果を表示します。
感想:
ふむふむ、コメントもついててわかりやすい。
回答: シェルスクリプトにおけるエラーハンドリングは非常に重要です。エラーハンドリングを使用することで、スクリプトの実行中にエラーが発生した場合に、適切に対処することができます。 以下に、一般的なエラーハンドリングを使用したシェルスクリプトの例を示します。
#!/bin/bash
# 'set -e' はエラーが発生したらスクリプトを終了する
set -e
# コマンドの実行
command1
# コマンドの実行が成功したか確認
if [ $? -eq 0 ]; then
echo "command1 executed successfully"
else
echo "command1 execution failed"
exit 1
fi
# 他のコマンドの実行
command2
# コマンドの実行が成功したか確認
if [ $? -eq 0 ]; then
echo "command2 executed successfully"
else
echo "command2 execution failed"
exit 1
fi
感想:
set -e
の意味は1ミリもわからんけど、コードはちゃんと動くぞ。
ChatGPT最高!
可茂IT塾ではFlutterインターンを募集しています!可茂IT塾のエンジニアの判断で、一定以上のスキルをを習得した方には有給でのインターンも受け入れています。
Read More可茂IT塾ではFlutterインターンを募集しています!可茂IT塾のエンジニアの判断で、一定以上のスキルをを習得した方には有給でのインターンも受け入れています。
Read More