Je veux capturer toutes les sorties du script scp automate et déplacer toutes les sorties vers le fichier journal
Mon script:
#!/usr/bin/expect -f spawn bash -c "scp /home/abc/pdf/105784/*.pdf [email protected]:/home/labdb2/Desktop/l/" expect { -re ".*sword.*" { exp_send "password@\r" } } interact
sortie:-
./exp_test.sh spawn bash -c scp /home/abc/pdf/105784/*.pdf [email protected]:/home/labdb2/Desktop/l/ [email protected]'s password: 104_105856_adhikari.pdf 100% 10KB 9.8KB/s 00:00 134_105856_adhikari.pdf 100% 10KB 9.9KB/s 00:00 135_105856_adhikari.pdf 100% 10KB 9.8KB/s 00:00 193_105856_adhikari.pdf 100% 10KB 9.8KB/s 00:00
Je veux toute la sortie dans un fichier journal dire nom scp_log.txt
aussi je ne veux pas dans un écran pour afficher ci-dessous chose
spawn bash -c scp /home/abc/pdf/105784/*.pdf [email protected]:/home/labdb2/Desktop/l/ [email protected]'s password:
Si vous vous intéressez à la méthode purement basée sur les log_user
, vous devez utiliser log_user
.
#!/usr/bin/expect -f log_user 0; # Disabling logging to user window log_file -a -noappend scp_log.txt spawn bash -c "scp /home/abc/pdf/105784/*.pdf [email protected]:/home/labdb2/Desktop/l/" expect { -re ".*sword.*" { exp_send "password@\r" } } interact
Si vous souhaitez activer la connexion à l’utilisateur, vous pouvez utiliser log_user 1
pour faire la même chose.
La redirection d’E / S est une chose que vous voulez utiliser:
spawn bash -c "scp /home/abc/pdf/105784/*.pdf [email protected]:/home/labdb2/Desktop/l/ &> scp_log.txt"
ou simplement appeler le script comme
./exp_test.sh &> scp_log.txt