2012-04-16 34 views
9

Tôi có tệp sao chép tệp bat từ máy hiện tại tới ổ đĩa mạng được ánh xạ (một dòng, lệnh xcopy).Không thể sao chép tệp đến đích UNC nếu tệp BAT được gọi qua tác vụ được lập lịch

Nó hoạt động khi tôi RDP đến máy chủ. Tuy nhiên, khi tôi chạy như một nhiệm vụ theo lịch trình, và cấu hình nó để chạy dưới cùng một người dùng tôi đã đăng nhập, nó không hoạt động và đưa ra lỗi 0x4.

Có cách nào tôi có thể đạt được điều này không?

Tôi cũng thử đồng bộ hóa và nó hoạt động khi tôi nhấp đồng bộ hóa. Khi tôi chạy nó như là vấn đề dịch vụ tương tự.

+0

upvoted một trong đó đã giúp tôi dưới đây, nhưng câu trả lời này cũng đã giúp tôi gỡ rối nó trong trường hợp của tôi http://stackoverflow.com/questions/8662024/how-do-i-capture-the-output -of-a-script-nếu-nó-đang-được-chạy-by-the-task-scheduler – lessthanideal

Trả lời

16

Tôi đã có thể tìm ra. Sau các tập tin batch làm việc dưới lên lịch, ngay cả khi tài khoản hệ thống cục bộ:

net use m: \\server\share /U:server\user password 
xcopy C:\source m: /E /Y 

Nó bản đồ một ổ đĩa mạng mỗi lần và sau đó sao chép vào ổ đĩa mà

1

Ai ánh xạ ổ đĩa mạng? Và bạn đang sử dụng tên ánh xạ, thay vì đường dẫn gốc UNC cơ bản? Vì có vẻ như ổ đĩa được ánh xạ được thiết lập trong kịch bản đăng nhập của bạn, không chạy nếu bạn không đăng nhập. Vì vậy, trong tác vụ đã lên lịch, bạn có thông tin xác thực chính xác cho đường dẫn UNC, nhưng không có ký tự ổ đĩa được ánh xạ .

+0

Tôi ánh xạ ổ đĩa mạng. Có, tôi đang sử dụng tên được ánh xạ. Tác vụ được lên lịch cho cùng một lỗi ngay cả khi tôi đã đăng nhập – Imran

+2

Việc bạn đăng nhập vào tác vụ đã lên lịch không quan trọng. Nó sử dụng phiên riêng của nó và ổ đĩa không được ánh xạ trong phiên đó. – MSalters

+0

@Marc: Tất nhiên là như vậy, khi nhận xét xác nhận. Các triệu chứng là không thể sao chép các tập tin, câu hỏi là lý do tại sao. Câu trả lời là một ký tự ổ đĩa bị thiếu cho một đường dẫn UNC vì một kịch bản đăng nhập không chạy. – MSalters

4

Tôi có vấn đề tương tự mà tôi muốn sao chép file (s) từ máy chủ đến hàng trăm máy chủ khác mà không cần ánh xạ ổ đĩa từ xa đến máy tính cục bộ của tôi. Tôi không có đủ ký tự ổ đĩa để ánh xạ hàng trăm máy từ xa vào máy tính cục bộ của mình! Tôi không thể chỉ ánh xạ ổ đĩa từ xa và sao chép.

Tôi nghĩ rằng tôi có thể sử dụng bản sao, xcopy hoặc robocopy và chỉ định số tín dụng của tôi cho lệnh sao chép. Nhưng không có lệnh sao chép nào có bất kỳ tùy chọn nào để cung cấp thông tin đăng nhập cho hệ thống từ xa.

Nhờ bài đăng ở trên, tôi có thể tạo một tệp hàng loạt nhỏ, nơi tôi chỉ lặp qua máy chủ của mình và tiếp tục sử dụng lại một ánh xạ ổ đĩa cho tất cả máy chủ của tôi.

Đây là tập tin thực thi của tôi ...

echo @off 
for /F %%j in (pchostslist1.txt) do (
    net use z:\\%%j\c$ /user:domain\myusername mypassword 
    mkdir \\%%j\c$\tmp\mynewdir 
    xcopy c:\anyfile.txt \\%%j\c$\tmp\mynewdir 
    net use z: /delete 
) 
6

Có thể sao chép tập tin vào một đường dẫn UNC mà không lập bản đồ như một ổ đĩa mạng. Chỉ cần cố gắng thiết lập đường dẫn UNC trong dấu ngoặc kép.

copy * "\\server\share" 

Không có dấu ngoặc kép, tôi gặp lỗi "cú pháp" chạy trên dòng lệnh Windows7.

3

Tôi đã gặp vấn đề tương tự và thay vì sử dụng sử dụng mạng, tôi chỉ cần lưu trữ mật khẩu như một phần của tác vụ được lên lịch. Bạn sẽ nhận thấy rằng nó nói rằng nó chỉ có quyền truy cập vào các tài nguyên địa phương nếu nó được đánh dấu.

Store password

Các vấn đề liên quan