0

自動化または手動化できる何かをする必要があることに気付くことがあります。たとえば、特定のスクリプトを8回実行し、各実行の間に小さな変更を加えました。これを自動化するスクリプトを作成することもできましたが、この場合は、毎回手動で実行する方が速いと判断しました。

しかし、手動で何かをすることに多くの時間を費やした後、そもそもそれを自動化したほうがよいことに気付くことがあります。

繰り返しのプロセスを開始する前に、スクリプトを作成して自動化するのに時間を費やす価値があるかどうかを判断するのに役立つ経験則の提案はありますか?

明確にするために:私が話しているのは、ファイルの移動や名前の変更などのsysadminタイプのものと、特定のデータをインポートするためのSQLスクリプトの実行などのDBAタイプのものです(これは私が今日行っていたことです) )。私は開発者であり、システム管理者やDBAではないことに注意してください。

4

11 に答える 11

8

そのリンクで説明されているように、私は「三振法とあなたが自動化する」ルールのファンです。

于 2009-10-29T20:49:47.533 に答える
6

スクリプトを作成する理由は次のとおりです。

いつ:

  • あなたはそれを二度目にします

  • それは複数のステップになります

  • 間違えやすい

  • 手動で行う方法を忘れがちです

于 2009-10-29T20:49:37.333 に答える
4

自動化プロセスで見られるかもしれないし見られないかもしれない時間の節約だけを考慮しないでください。また、プロセスを手動で実行するとエラーが発生する可能性も考慮に入れてください。

適切に行われると、自動化されたプロセスによってエラーの可能性を最小限に抑えることができます。これにより、正味の時間の節約にならなくても、自動化できる可能性があります。

もちろん、これの裏返しとして、プロセスが自動的に実行されている場合は、プロセスが軌道に乗っていないことを確認するために、必ずタブを付けておいてください。

于 2009-10-29T20:52:14.020 に答える
3

当然のことながら、スクリプトを書く理由の 1 つは、スクリプトを書くという行為が、タスクを 1 回実行するよりも楽しいからです。その過程で何かを学べる可能性があります。

多くのギークにとって、何か賢く、楽しく、興味深いことをすることは、他のどんな利益よりも重要です。したがって、この場合、手動でタスクを実行するよりも時間がかかる場合でも、タスクを自動化することでこれらの基準を満たすことができます!

于 2009-10-30T00:41:59.897 に答える
1

システム管理の真実が1つあるとすれば、それは次のとおりです。単純なsysadminタスクが2回以上楽しいものはありません。単純な退屈なタスクを2回以上実行していることに気付いた場合は、それを自動化してください。

--http ://www.ibm.com/developerworks/linux/library/l-punix.html

于 2009-10-29T20:50:37.697 に答える
1

自動化は、繰り返し実行する操作のセットが常に同じである場合、エラーの原因を減らします。

数年前に自分の(asp.net)プロジェクトの1つを開始したとき、3つの書かれたページをカバーする手動リリースプロセスがありました。ステップバイステップで、その作業をビルドバッチファイルに移行しました(単一の操作またはすべてを選択するためのコマンドラインオプションなどを使用)。

スクリプトが完了すると、それは完璧に実行され、実行ごとに1時間の手作業を節約できました。

そして時々、それはスクリプトを書くことの楽しみだけです;)

于 2009-10-29T20:53:45.400 に答える
1

開発者向けのサイトです。

同じことをもう一度行う必要があると思われる場合は、今すぐ自動化してください。ただし、YAGNI (You Ain't Gonna Need It) のような法律を忘れず、自動化に時間をかけすぎないようにしてください。少しだけなだめるだけで、今あなたに合ったものを手に入れてください。

次回は、リファクタリングして改善しますが、ほんの少しだけです。YAGNIを思い出してください。

3回目は、いくつかの入力を与えることができる素敵な小さなパッケージで試してみてください。エラー条件で賢明なことを実行してエラーをログに記録します。

シェル スクリプトを使用するのではなく、使用するたびにコードを調整して改善できる Python のような実際のスクリプト言語を使用し、リモートで実行して数千のサーバーを管理できる本格的な自動化フレームワークになることを願っています。 1回の呼び出しから。

于 2009-10-29T21:18:44.340 に答える
1

私の経験則:

  • 面倒だと感じたら、それをどのように自動化できるか、どれだけの作業が必要か、どれだけの作業を節約できるかを少し考えてみてください。
  • 自動化が非常に簡単な場合、または明らかに多くの作業を節約できる場合は、すぐに自動化を開始してください。
  • 自動化しないことに決めて手動で行うのが非常に面倒になった場合、または自動化することに決めたが問題が発生した場合は、もう一度考え直してください。
于 2009-10-29T21:35:30.217 に答える
0

優れたプログラマーは、最小限の労力と時間で物事を行おうとするという点で、怠惰になる傾向があります。したがって、総時間の労力を節約できるのであれば、それだけの価値があるかもしれません。

于 2009-10-29T21:23:23.613 に答える
0

私のルールは簡単です。長期的には、手動で実行したり、スクリプトを記述したりする時間を節約できますか。

特定のタスクを数回だけ実行する必要があり、その後は二度と実行する必要がない場合は、スクリプトを作成する価値がない可能性があります。ただし、わずかな変更を加えるだけでタスクを繰り返し実行する必要がある場合は、スクリプトを作成することで時間を節約できます。

于 2009-10-29T20:51:09.043 に答える
0

私のルールは次のとおりです。考える必要がなくなったときにスクリプトを作成します。まだマインドフルにやっているか、プロセスについて何かを学んでいる、または結果に特に関心がある場合は、スクリプトを作成しないでください。しかし、何かを成し遂げるためにやらなければならないことがあり、それをするのが面倒な場合は、スクリプトを作成してください。

于 2009-10-30T00:16:18.093 に答える