Você pode usar o ssh para isso. Por exemplo:
for server in server1 server2 server3; do ssh $server mv oldfilename newfilename; done
Você pode querer ter uma lista de servidores armazenados em uma variável de ambiente:
export MYLISTOFSERVERS="server1
server2
server3
...
servern
"
e uma função (por exemplo) no seu bashrc (ou um script dedicado):
runforeachserver () {
for server in $MYLISTOFSERVERS; do
ssh $server "$@"
done
}
para que você possa chamá-lo sempre que quiser fazer tarefas para cada um dos seus servidores. Por exemplo, renomeie arquivos como você queria:
runforeachserver mv oldfilename newfilename
ou (apenas para mostrar a você como escapar do comando para passar pelo ssh):
runforeachserver date -d \"month ago\" +\"%Y-%m-%d\"
2011-04-04
2011-04-04
2011-04-04
2011-04-04
2011-04-04
2011-04-04
Obviamente, isso pode ser tão robusto quanto você desejar (habilitando arrays de servername / sshport), verificações de sintaxe, etc ...