†scpコマンドでファイルを他のサーバにコピーしようとしたとき、パスワードの問い合わせがあるのに、scpによるファイル転送がされない場合、コピー対象となるサーバーの.bashrcを変更・追記しませんでしたか!?.bashrcに追記した内容・コマンドによっては、scpができなくなります。以下、当方がscpコマンドができなくなった時の原因と対応を以下に記します。使用したOSはCentOSになります。当方がscpできなくなった時の現象と原因を以下に記します。192.168.56.6にファイルを転送しようとすると以下のように表示され転送されない。$?1scpのファイル転送出力がされず、$?が1となっているscpコマンドに-vオプションをつけて動作を確認したが、はっきりした原因がわからず。scpをした時に日付が表示されるので、転送先マシン(本資料では、192.168.56.6)の.bashrcファイルを確認してみると、dateコマンドを実行していた。functionsdatedateコマンドが原因でscpが意図した動作にならなかった。(dateコマンドを削除すればscpコマンドが意図した動作になる。)以下、dateコマンドを転送先マシンの.bashrcから削除し再度、転送元マシンからscpコマンドを実行した出力結果です。ファイルが転送されているのが確認できます。$?0echoコマンドなどによる、出力があるコマンドを利用した場合も同様にscpコマンドが意図した動作になりません。以下に解決方法を3つ記述します。.bashrcの出力があるコマンドを記述しない。(または出力させない。).bash_profileに記述する。.bashrcと.bash_profileの違いは以下の資料を参考にしてください。.bashrcと.bash_profileの違いbashシェルの場合、SSH_TTY環境変数を利用する以下、SSH_CLIENT環境変数を利用した場合の例を記述します。†.bashrcで何らかの処理をしたい時、以下のように記述することによりsshとscpの動作を一応別々に記述することができます。SSH_TTYは、コマンドに割り当てれている端末がセットされます。端末を持たない場合は何もセットされないことを利用し判別しています。一応、意図した動作になります。sshのSSH_TTYの抜粋です。set.SSH_TTYの環境変数を利用し一応sshとscpを切り分ける記事でした。