2019-10-28に投稿

FTPコマンドは半端な入力を補完して実行してくれる?

ftp

はじめに

/^[^S]*FTP[^S]*$/の話なので、他はわからないし、今さら使うこともないのでは、と思わないでもないですが。
FTPであることについては、言いたいことを全て飲み込んでください。お願いします。

あ、あと環境。
OS: macOS High Sierra 10.13.6
ftp: 1.9.4

発端

僕ってしょっちゅうslコマンドだとかdcコマンドを実行してしまうんですが、そんな感じでこの間も

$ ftp
ftp> passiv

こんな感じでeが押ささんなくて押せなくてEnterしちゃったんですね。
そしたら、

$ ftp
ftp> passiv
Passive mode on.
ftp>

ちょっと目を疑った。俺、ちゃんと打ててないよ?
で、ちょっと試してみた。

$ ftp
ftp> passive
Passive mode on.
ftp> passiv
Passive mode off.
ftp> passi
Passive mode on.
ftp> pass
Passive mode off.
ftp> pas
Passive mode on.
ftp> pa
Passive mode off.
ftp> p
?Ambiguous command

まじかー。
Invalid じゃなくて Ambiguous なあたり、
これってコマンドの候補が一つに確定したら途中でも実行してくれるってことかなー。つーことはpがダメなのはputがあるからかー。
と想像した。

ということで、

$ ftp
ftp> ope
(to) 

なるほどこうなるよなー。

みんな知ってんの?

これって常識なのかな? と疑って隣の人に聞いてみたら、知らなかった。少なくとも自分だけではなかった。
軽くググってみた。
けど、
ftp 補完
とかだとファイル名のTab補完の話になるし、
ftp コマンド 途中
とかだと通信が途中で切れた場合の挙動の話になるし、
調べ方がよくわからなかった。
うーん。

まとめ

確定しているし、間違った実行とかはないだろうけど、一応、普通に打った方が良いと思う。


hammhiko

恥を晒して生きていきます。

Crieitは個人で開発中です。 興味がある方は是非記事の投稿をお願いします! どんな軽い内容でも嬉しいです。
なぜCrieitを作ろうと思ったか

また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!

こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください!

ボードとは?

コメント