質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

解決済

1回答

1409閲覧

Windows10proの共有フォルダからLinuxマシンへ複数ファイルやフォルダを転送したい: smbclient

lotoemon

総合スコア14

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

0クリップ

投稿2022/07/28 15:51

編集2022/07/28 15:54

前提

<環境>
サーバー側   :Windows10Pro(共有フォルダあり:winShare)
クライアント側 :mx Linux21.1(samba及びsmbclient:ver.4.13.13-Debian)

実現したいこと

linuxからsmbclientでWindows側のwinShare(共有フォルダ)より下記の処理を成功させたい

①winShareにある複数のファイルを転送したい:a.txtとb.txt
②winShareにある(ワイルドカードなどで選択した複数)のファイルを転送したい:*.txt
③winShareの直下にあるフォルダ(subDir)にあるファイル:c.txtを転送したい
④winShareの直下にあるフォルダ(subDir)そのものをフォルダ転送したい

発生している問題・エラーメッセージ

①  b.txtのみ転送成功 ②  NT_STATUS_OBJECT_NAME_INVALID opening remote file \*.txt ③  tree connect failed: NT_STATUS_BAD_NETWORK_NAME ③2 Error opening local file subDir/c.txt ④  NT_STATUS_FILE_IS_A_DIRECTORY opening remote file \subDir

該当のソースコード

※1:ファイル1件ごとなら転送に成功しています

$ smbclient -U 'win側ユーザー名'%'パスワード' //win側ドメイン名/winShare -c "get a.txt ; exit"

試したこと

下記のようなコマンドを試してみてエラーになりました
① smbclient -U 'win側ユーザー名'%'パスワード' //win側ドメイン名/winShare -c "get a.txt,b.txt ; exit"
② smbclient -U 'win側ユーザー名'%'パスワード' //win側ドメイン名/winShare -c "get *.txt ; exit"
③ smbclient -U 'win側ユーザー名'%'パスワード' //win側ドメイン名/winShare/subDir -c "get c.txt ; exit"
③2 smbclient -U 'win側ユーザー名'%'パスワード' //win側ドメイン名/winShare -c "get subDir/c.txt ; exit"
④ smbclient -U 'win側ユーザー名'%'パスワード' //win側ドメイン名/winShare -c "get subDir ; exit"

補足情報(FW/ツールのバージョンなど)

<自身のスキル>
今月(7月)にはじめてLinuxを導入したばかりの超初心者です
コマンド操作も勉強中で質問の中に'とんちんかん'な内容があった場合にはお許しください
将来てきにはPythonで共有フォルダの転送などは自動化したいと考えております

linux側の共有フォルダをWindows側からアクセスすることはsambaを利用し成功しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

コマンドは基本的にftpコマンドと同じです。

①winShareにある複数のファイルを転送したい:a.txtとb.txt

get a.txt; get b.txt

②winShareにある(ワイルドカードなどで選択した複数)のファイルを転送したい:*.txt

prompt; mget *.txt

③winShareの直下にあるフォルダ(subDir)にあるファイル:c.txtを転送したい

cd subDir; get c.txt または get subDir/c.txt c.txt

④winShareの直下にあるフォルダ(subDir)そのものをフォルダ転送したい

prompt; recurse; mget subDirrecurseftpには無い)

投稿2022/07/28 17:31

otn

総合スコア84555

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

lotoemon

2022/07/29 03:59

ご回答、ありがとうございます。 大変、助かりました。 早速、確認してみます。 これからも、より精進してまいりますので これからも宜しくお願いします。
lotoemon

2022/07/29 07:30

先程、教えて頂いだコマンドを実行してみました すべてうまく動作いたしました。 ありがとうございます 今後とも御指導を宜しくお願いします 失礼いたします
otn

2022/07/29 09:24

smbclientのサブコマンドの日本語での解説サイトは少ないかもしれないけど、ftpコマンドのサブコマンドの解説サイトならいくらでもあると思うので、各サブコマンドの意味は調べてみましょう。 まあ、両者は完全に同一と言うことでは無いですが。
lotoemon

2022/07/31 05:58

アドバイスありがとうございます これから少しずつ勉強していきたいと思います 宜しくお願いします
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問