結論から言うと、実現はできるでしょうがお勧めしません。
そんなめんどくさいことをやらずとも、ソースをgit管理した上で自動デプロイの仕組みを整えればいいのではないでしょうか。
やり方は色々あり、AWSで完結させるならCodePipelineを使うとか、もうちょっとカスタマイズしたければCodeBuild+CodeDeployを組み合わせてデプロイの仕組みを作るか、など。
Jenkinsサーバを立ててJenkinsにデプロイをやらせるのも使い古された方法です。
今だとCircleCIなんかを使ってもいいでしょう。
GitHubを使っているならGitHub Actionsも今なら使えるでしょう。
上記すべて、対象がgit管理されていることが前提です。
gitリポジトリ上に更新対象となるソースがあればわざわざ検証環境から本番環境へ転送する必要はなく、gitリポジトリ上からソースを取得してデプロイすればよくなります。
今回質問に書いてあることも頑張れば普通に実現できます。
時間を指定してコマンドを流すコマンドはあります(調べれば出てくるので割愛します)。
対象がわかっているならscpで送ればいいでしょう。
ただ、その設計は3つのサーバ全てに依存関係を作る構造なのでお勧めしません。
また反映を確実にするためにはそれなりに作り込みが必要でしょう。
通信エラーなどでコマンドに失敗した時にどうするのか、など。
単にソースを配置するだけでなく、配置後に何かしらコマンド実行等の処理が必要な場合、その動きをどうやって担保するのかなども気にしなければなりません。
これは他の方法を取っていても同様に気をつける必要のあることですが。
前述した大抵のサービスではこれらをやりやすくする仕組みが何らかの形で備わっているはずです。