Cyber​​duckの「stdin:ttyではない」エラー

Cyber​​duckの「stdin:ttyではない」エラー

私はCyber​​duck(GUI SCPクライアント)を使用しています。

私が送ったコマンドを通して:

chown -R username:username path/sp_furnicom17

次のエラーが発生します。

stdin: is not a tty

私は何が間違っていましたか?

ベストアンサー1

通常、このメッセージが表示されます。

stdin: is not a tty

scpあるいは、SFTPなどのものを使用する場合、rsyncこれはすべてのセッションにTTYがあると想定しているターゲットシステムのログインスクリプトに何かがあることを意味します。これは間違っています。非対話型ログイン(SFTPscprsyncSFTPなど)にはTTYはありません。

ログインスクリプトに端末設定を変更したり、他の入出力を実行しようとした場合は、セッションにTTYがあるかどうかに応じて条件を適用する必要があります。たとえば、~/.[bash_]profileスクリプト.bashrcに次のコマンドがあるとします。

echo "Today's fortune cookie:"
fortune

次のように変更する必要があります。

if tty -s
then
    echo "Today's fortune cookie:"
    fortune
fi

おすすめ記事