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

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

新規登録して質問してみよう
ただいま回答率
85.48%
コマンドプロンプト

コマンドプロンプト(cmd.exe)はMicrosoftによって提供されているコマンドラインインタプリタです。OS/2・Windows CE・Windows NTで使用可能です。

Windows Server

Windows Serverとは、Microsoft社のサーバ用オペレーティングシステムの総称です。 企業内ネットワークなどで利用されるサーバ機へ導入することを想定して開発されているため高い安定性があり、 管理機能を提供するソフトウェアが多く含まれています。

Q&A

解決済

1回答

1674閲覧

タスクスケジューラで実行するバッチファイルが正しく動作しない

koppe

総合スコア14

コマンドプロンプト

コマンドプロンプト(cmd.exe)はMicrosoftによって提供されているコマンドラインインタプリタです。OS/2・Windows CE・Windows NTで使用可能です。

Windows Server

Windows Serverとは、Microsoft社のサーバ用オペレーティングシステムの総称です。 企業内ネットワークなどで利用されるサーバ機へ導入することを想定して開発されているため高い安定性があり、 管理機能を提供するソフトウェアが多く含まれています。

0グッド

0クリップ

投稿2017/11/28 04:00

編集2017/11/28 04:28

毎度お世話になっております。

掲題の件に関しましてご助言いただけますと幸いでございます。

【動作環境】
windows server2012

【事象】
下記コードが記載されているバッチファイルをタスクスケジューラで実行するも
一部コード(xcopy部分 call部分)が無視されてその後の処理が進んでます。
手動でバッチを起動した場合は問題なく動いているのですがタスクスケジューラで実行
のみ起きております。

【バッチの動作】
・GoogleDriveからamazonS3サーバにコピーとAWSのDBへのファイル情報登録
・テキストファイル(count.txt)には数値"1"のみがはいってます
・コピー元のデータはテキストファイル(count.txt)記載の番号フォルダ
・テキストファイルの値を+1する

【補足】
・GoogleDriveはZドライブにマウント状態になっております
CMD

@echo off setlocal set WORKPATH=バッチファイルのパス set COPYPATH=Z:\"Team Drives"\tmp\ set FILENAME=count.txt set /p COUNT=<%WORKPATH%\%FILENAME% xcopy /y Z:\"Team Drives"\%COUNT%*.pdf %COPYPATH% call [S3サーバにアップするjarファイル起動バッチの呼び出し] cd /d %WORKPATH% set /a COUNT=COUNT+1 echo.%COUNT%>%FILENAME% endlocal exit /b 0

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

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

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

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

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

hy1234

2017/11/28 04:20

無視されているのではなく実行に失敗している可能性があるのでコマンド単位の実行ログを取ってみてはどうでしょうか。また、スケジューラからネットワークドライブにアクセスする場合はそのままだとエラーになるかも知れません。
koppe

2017/11/28 04:25

ご回答ありがとうございます。情報不足でもうしけありません、ネットワークドライブ(GoogleDrive)ですが「WebDrive」というツールを使用してZドライブにマウント済みになっております。ログ取得試してみます。
guest

回答1

0

ベストアンサー

何のエラーメッセージも出ずにと言う事でしょうか?
あるいは、エラーメッセージの確認の仕方が分からないと言う事でしょうか?

あと、Zドライブはどういう種類のドライブでしょうか?タスクスケジューラー環境からアクセスできますか?

投稿2017/11/28 04:22

otn

総合スコア84538

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

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

koppe

2017/11/28 04:31

ご回答ありがとうございます。また、情報不足で申し訳ございません エラー表示はなにもなく終了しております。 ZドライブはGoogleDriveをマウントしているドライブ名になってます。 別のタスクスケジューラでもZドライブは使用されていてアクセスはできております
gitya107

2017/11/28 04:36

横から失礼します。Zドライブをマウントしているユーザ と タスクスケジューラのタスク実行ユーザ は同一でしょうか。マウントと実行ユーザが異なるのであれば、タスク実行時にzドライブは見えません
koppe

2017/11/28 04:45

ご返答ありがとうございます、実行ユーザは同一のユーザとなっております
otn

2017/11/28 04:48 編集

> エラー表示はなにもなく終了しております。 タスクスケジューラーで動かすバッチのログの取り方はご存じと言う事ですね。 とはいえ、少なくともXCOPYが何も表示せずに何もしないというのは考えにくいですが。 標準エラー出力だけじゃなく、標準出力も取得して確認していますか? @echo offをはずして、標準出力を確認して下さい。
gitya107

2017/11/28 05:17

>ご返答ありがとうございます、実行ユーザは同一のユーザとなっております if exist を使ってzドライブ、COPYPATH、起動バッチ(call部分)が正しく認識できるか確認して頂けないでしょうか。
koppe

2017/11/28 05:26

度々ご返答ありがとうございます。 echo offを外してみたところコピーで失敗する前にZドライブへの接続がうまくいっていない様子でした。ほかの同じ環境内の成功しているバッチを見たところバッチ起動毎にマウント切断⇒接続をしている様子でした。 また実施前ですが成功例習って記述なおしてみます
otn

2017/11/28 07:27

> バッチ起動毎にマウント切断⇒接続 GoogleDriveということで、普通のネットワークドライブと違うのかと思いましたが、同じようですね。 昔使っていたクラウドストレージは、ネットワークドライブじゃなくて、ローカルドライブに見える物でした。
koppe

2017/11/28 08:08

自分もローカルドライブと思い込んでました、ネットワークドライブとして接続でうまくいきました 皆様ご協力ありがとうございました
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問