• ベストアンサー

SFTPからのmput、mgetエラー

SFTPでファイルの受信、転送をしようとしています。 複数のファイルが対象のため、mget、mputコマンドを使用したのですが、 Invalid Command と出力され、実行できません。 get、putはできるのですが。。。 何がおかしいのかわかりません。 どこか調べるところがあれば教えて頂けますでしょうか。 再導入が必要でしたら方法も教えて頂けると助かります。 OSはSolaris9です。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • hyter
  • ベストアンサー率73% (31/42)
回答No.2

sftpにログイン後に「help」か「?」と打ってみてください。 mget/mputが出なければ非対応かと。

y-u-n-a
質問者

お礼

helpを打ったところ、mget、mputは表示されませんでした。 非対応なようですね。 どうもありがとうございました。

その他の回答 (1)

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.1

ええっと…そのSFTPサーバ自体にmget/mputコマンドが実装されているんでしょうか? openssh-5.7p1のsftp-serverには実装されていなさそうですが。

y-u-n-a
質問者

お礼

opensshではなく、OSのsshが入っているようです。 mget、mputは入っていないようです。 どうもありがとうございました。

関連するQ&A

  • Linux ,sftpでファイルをつくる

    Linux超初心者です。 sftpでたとえば、stestと言うディレクトリを作って、それにsampleというファイルを作りたいんですが、どんなコマンドで作ったらよいでしょうか? cat > sampleでは、できないし、touchだったでしょうか? putやgetがいまいち理解できないんですが、これだったらどう使えば よいのでしょうか?sftpのコマンドがよくわからないので。 よろしくお教えください。

  • SFTP ハッシュコマンドについて

    現在、LinuxでFTPサーバを構築しております。 通常のFTPコマンドによるサーバへの接続の場合、ファイル転送状況を視覚的に確認 出来る方法として、hashをonにする方法がありますが、SFTPコマンドでサーバに 接続した場合、hashコマンドが存在しておらず、Invalid command.となってしまいます。 これば、サーバ側(VSFTPDなど)の設定による問題で解決出来るのでしょうか? あるいは、仕様によりコマンドがサポートされていないのでしょうか? 解決方法があれば、教えてください。宜しくお願い致します。

  • sftpで、mget * とした時にメッセージを表示しない方法

    sftp -b commnand_file XXX.XXX.XXX.XXX として、 command_file内で、mget * とした時に、 ファイルがないとエラーメッセージを表示されます。 このエラーメッセージをなくしたいのですが、 どのような方法があるでしょうか?

  • sftpのディレクトリ制限について

    sftpのディレクトリ制限についてので質問です。 友人とのファイルのやり取りにSFTPを考えています。 そこで、ChrootDirectoryを使用してディレクトリ制限をかけたいと思っているのですが、 Webサイトなどを参考に設定してみましたが、うまく出来ません。 /etc/ssh/ssd_config ~略~ Subsystem sftp internal-sftp Match group sftponly ForceCommand internal-sftp ChrootDirectory /chroot/ X11Forwarding no AllowTcpForwarding no と設定し、 /etc/group sftponly:x:300: /etc/passwd user:x:300:300::/:/sbin/nologin とユーザーグループを作成し。 ls -l / drwxr-x---. 3 root sftponly 4096 1月 9 07:51 2013 chroot ls -l /chroot drwxrwxrwx. 2 user sftponly 4096 1月 9 07:51 2013 share を作成しました。 以上の設定をしていざsftpで接続してみると、 # sftp user@localhost Connecting to localhost... user@localhost's password: sftp> pwd Remote working directory: / sftp> ls Couldn't get handle: Permission denied sftp> cd share sftp> pwd Remote working directory: /share sftp> put a Uploading a to /share/a Couldn't get handle: Permission denied sftp> と上記の様にcdでのディレクトリ移動などはできますがファイルの一覧取得は権限がなくできませんでした。 ディレクトリ制限をしたユーザでsftpでファイルのやり取りをするためにはあとどのような設定が必要でしょうか? よろしくお願いします。 環境 OS:CentOS 6.3 openssh-5.3p1-81.el6_3.x86_64

  • shell lftpでsftp接続

    Shellのスクリプトの中で次のコマンドを記述しています。 lftp -u "user","pass" sftp://IP 操作対象ファイルがあるDIRに移動後↓ >mv *.csv home/oracle/work/ のように拡張子がCSVのファイルをすべてworkに移動したいのですが、 これをsh -x で実行すると、 Access fairure: No such file (*.csv) と出力されてしまいます。 複数ファイルのディレクトリ移動はできないのでしょうか? どなたかご存知の方がいればご教示いただきたく存じます。

  • PostgreSQL リストアエラー

    CentOS5.5×2 PostgreSQL8.4.4×2 リストア時にinvalid command \Nというエラーが出ます insertコマンドであれば普通に通るのですが、 出力ファイルが10G近くありダンプ+アップロード+リストアで一日半近く掛ってしまいます エディタで内容を確認しようにもファイルが大きすぎるため開けません どのようにすればリストアできますでしょうか

  • FTPのコマンド「mput」について

    FTPで、ファイルを一括して、サーバーに送りたいのですが、その際に 「mput *.* *.*」などとすると、それぞれのファイルが2回putされます。これは、仕様でしょうか。 例えば、1つのファイル「A.txt」を mput した場合と、put した場合では、下記のようになります。 <mput> ************************ ftp> mput A.txt A.txt 200 PORT command successful. 150 Opening BINARY mode data connection for A.txt. 226 Transfer complete. ftp: 159232 bytes sent in 0.01Seconds 10615.47Kbytes/sec. 200 PORT command successful. 150 Opening BINARY mode data connection for A.txt. 226 Transfer complete. ftp: 159232 bytes sent in 0.00Seconds 159232000.00Kbytes/sec. ************************ <put> ************************ ftp> put A.txt A.txt 200 PORT command successful. 150 Opening BINARY mode data connection for A.txt. 226 Transfer complete. ftp: 159232 bytes sent in 0.01Seconds 10615.47Kbytes/sec. ************************

  • FTPコマンドで複数ファイルをアップロードする

    どうか、お力をお貸しください。 テキストファイルに命令文を書いて、それをFTPコマンドで実行しています。 以下、テキストに書いたものです。 これは1ファイル用ですが、これを実行するとhogeというディレクトリに『123.csv』がアップロードされます。 open IPアドレス ユーザー名 パスワード put C:/123.csv /hoge/123.csv close quit 私がやりたいのは、指定のディレクトリ内の全てのファイルを転送することです。 複数ファイルの転送は、mputコマンドを使う、ワイルドカードで同一拡張子のファイルを全て転送できる、確認のプロンプトを出さない仕掛けが必要 ・・らしいことは分かったのですが、上手くいきません。 以下のように書いてはみましたが、失敗しました。 ftp -i open IPアドレス ユーザー名 パスワード mput C:/*.csv /hoge/*.csv close quit mput以下、どのように記述すればよいのでしょうか? くだらない質問かもしれません、申し訳ありません。 どうかお力をお貸しください、宜しくお願い致します!

  • VB6.0でFTPでのファイルの送受信

    VB6.0でFTPでのファイルの送受信(下記(1))をしようと考えております。 尚、コンポーネントは、インターネットトランスファコントロール(Inet)を使用しております。 (1)"リモートサーバーに対して、複数件のファイルを送信し、無事転送が完了したら(リモートサーバー の指定フォルダに送信された複数件のファイルがあるのを確認後)、  クライアント側のファイル(リモートサーバーに送信が済んだファイル)を消す" という処理を考えております。 ここで、質問なのですが (1)vbを使ったFTP転送で、複数件のファイルを一括転送(mputコマンドの使用)は、可能か?  (2)もし、(1)が不可能の場合、    "送信するファイルをputコマンドで1つ送って、リモート側にそのファイルがあるのを    getコマンドで確認して、もしgetであれば、クライアント側のそのファイルを消す" という処理を送信するファイル数分繰り返すことになるんですか?        1つのファイルの場合に、Inet1_State_Changeイベントで、ループさせstate = 12 の時( リモート側に正常に送信されたと考えて)、クライアント側のファイルを消していいのでしょうか?    VBのヘルプを見ると、state = 12 は、get処理で使用するというようなことを書いてありますが。     以上 

  • ftp処理でmove(移動)を行いたい

    バッチ処理でデータをftp受信しています。 --------------------------- ユーザ名 パスワード prompt mget abc*.log mdelete abc*.log bye --------------------------- このようなコマンドを行っています。 ftpサーバにはさまざまなファイルが随時生成されます。 この処理では定期的に abcで始まる全てのログファイルをgetし、 abcで始まる全てのログファイルをdeleteしています。 ところが、abcで始まるファイルの生成がランダムのため、 偶然mgetが終わった後でファイルが生成され、 mdeleteを行うと、getしていないファイルまで削除される恐れがあるのです。 そのため、一件ずつ移動を行いたいのですが、 調べてもmoveのようなコマンドがftpで見当たらないのですが なにか、moveに置き換わるような処理はないでしょうか? *windows同士の通信です。