[linux]ncコマンドによるファイル転送

2015年11月16日月曜日

linux unix

LAN内のlinux同士でファイル転送したいが、FTPやNFSのサーバ設定まではしたくない時がある。
ncコマンドを使うと簡単にファイルを転送できる。
ncはnetcat。ネットワーク越しにcatできるわけだ。

待ち受け側ではポート番号を指定して、プロセスを起動することによってサーバになる。
# ポート50000で接続を待ち受ける。
$ nc -l 50000

接続側は以下となる。
# hostにポート50000で接続してtest.datの内容を送信する。
$ nc host 50000 < test.dat

サーバ側は一度受信するとプロセスが終了してしまうが、終了せずに受信し続けたい場合は-kオプションを指定する。
# ポート50000で接続を待ち続ける。
$ nc -lk 50000

ただし、セキュアな環境ではnetcatはマルウェアとみなされる場合もあるため、注意してほしい。