Tôi cần ánh xạ ổ đĩa mạng với một tập tin thực thi, nhưng không muốn chỉ định ký tự ổ đĩa.Lập bản đồ ổ đĩa mạng mà không cần mã hóa ổ đĩa trong một tập tin batch
Tệp lô được sử dụng như một phần của quy trình triển khai; Tôi gọi tập tin thực thi từ CruiseControl.Net
, tập tin batch cần ánh xạ đường dẫn UNC yêu cầu thông tin xác thực để xác thực. Sau đó, tập tin batch gọi RoboCopy
để triển khai trang web từ thư mục đầu ra đến đích (và loại trừ một số tệp và thư mục). Cuối cùng, lô xóa ổ đĩa mạng.
Vấn đề là điều này không thể mở rộng, sẽ tốt khi chỉ có một vài dự án nhưng hiện tại chúng tôi có 20 dự án sử dụng phương pháp này và sắp hết các ký tự ổ đĩa để lập bản đồ. Tôi không muốn sử dụng lại ký tự ổ đĩa khi chúng có thể va chạm - điều đó sẽ rất tệ.
Đây là một ví dụ về các tập tin thực thi:
@echo off
net use x: \\192.168.0.1\Share\wwwroot\MyProject /user:mydomain\myuser MyP455w0rd
robocopy.exe "W:\wwwroot\MyProject" x:\ *.* /E /XO /XD "App_Data/Search" "*.svn" /XF "sitefinity.log" "Thumbs.db" /NDL /NC /NP
net use x: /delete
và định dạng để có thể đọc:
@echo off
net use x: \\192.168.0.1\Share\wwwroot\MyProject
/user:mydomain\myuser MyP455w0rd
robocopy.exe "W:\wwwroot\MyProject" x:\ *.* /E /XO /XD
"App_Data/Search" "*.svn" /XF "sitefinity.log" "Thumbs.db" /NDL /NC /NP
net use x: /delete
Có là một cơ hội của nhiều mạng chia sẻ kết nối đồng thời, nếu không tôi chỉ có thể chỉ định Z: hoặc một chữ cái hardcoded cho mỗi dự án. sử dụng net */delete cũng sẽ giải phóng TẤT CẢ các lượt chia sẻ được kết nối và đó có thể là sự cố trên máy chủ –
@Simon Martin: xem câu trả lời cập nhật của tôi. –
đẹp hơn nhiều so với giải pháp của tôi :) –