SFTP(Solarisサーバー間のみ)を介して大量のファイルを転送するのに時間がかかります。この間、コンピュータの電源を入れることはできませんでした。私は試した:
nohup sftp server1
シェルが開くと、ダウンロードしたファイルが表示されます。シェルを閉じると停止します。私はps -ef
このプロセスを見ませんでしたsftp
。ファイルnohup.outステートメント:信号15で終了
代わりに、これはうまくctrl-zいきます。しかし、これにはbashシェルが必要です。 kshでこれをどのように実行できますか?bg
disown
答え1
ksh で Ctrl+Zbg
を実行することもできます。disown
また、nohup
次のようなものも欲しいでしょう。
nohup sftp server1
...
<Ctrl+Z>
bg
disown
しかし、ここで私の提案は次のとおりです。画面。 OpenSolarisはSUNWscreen
パッケージにあります。 Run を実行しscreen
、新しい仮想端末でシェルを起動します。そのシェル内で実行しますsftp server
(直接実行することもできますscreen sftp server
)。転送を開始し、Ctrl+と入力してスクリーンA Dセッションを切断します(「分離」)。セッション内のプロセスは引き続き実行されます。後でを使用して、対応する画面セッションに再接続できますscreen -rd
。
答え2
- SFTP検証
- Ctrl-z
nohup -ga $(pgrep sftp)
答え3
Solaris で ksh を使用している場合は、次の手順に従います。
%nohupコマンド> command.log 2>&1&
ksh端末を終了しても大丈夫です。