名前に:(コロン)が含まれているファイルをscpコマンドでコピー

Ubuntuでウィンドウのスクリーンショットを撮影し其れをscpで他のホストへ転送を試みたところこうである。

$ scp Screenshot\ from\ 2019-01-18\ 16\:44\:48.png guro@192.168.0.100:/home/guro
ssh: Could not resolve hostname screenshot from 2019-01-18 16: Name or service not known

或いは Temporary failure in name resolution のようなメッセージも見られた。どうもファイル名に含まれる最初のコロンの直前までがホスト名と看做されている風情を感ずる。ファイル名をクオートで囲い込めばエラーを迂回できると考えたけれども案に相違して結果は同じであった。scpのオンラインマニュアルを繰るとこうである。

File names may contain a user and host specification to indicate that the file is to be copied to/from that host. Local file names can be made explicit using absolute or relative pathnames to avoid scp treating file names containing ‘:’ as host specifiers.

$ man 1 scp

相対パスか絶対パスでファイル名を定めればホスト名として解釈されずに済むというものである。

$ scp ./Screenshot\ from\ 2019-01-18\ 16\:44\:48.png guro@192.168.0.100:/home/guro

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください