banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Thảo luận hệ điều hành Windows Lệnh trong DOS  XML
  [Question]   Lệnh trong DOS 03/05/2011 20:32:41 (+0700) | #1 | 236597
[Avatar]
BlueBird
Member

[Minus]    0    [Plus]
Joined: 19/07/2003 04:08:08
Messages: 288
Location: Bến Thượng Hải
Offline
[Profile] [PM]
Chào mọi người.
Rảnh rang chả biết làm gì, làm cái tool nho nhỏ trong DOS chơi, nhưng giờ lại bị vướng 1 ít, xin được chỉ bảo ạ.

* 1 tập tin batch để ghi 1 giá trị vào trong 1 tập tin (gọi là config cho nó ngầu)
Code:
echo set drv1=%choice1% >>config.bat
echo set drv2=%choice2% >>config.bat

=> nó ra nội dung trong config.bat là
Code:
set drv1=a
set drv2=b

Nhưng ngặt nỗi là sau giá trị a và b lại là 1 khoảng trắng, trong khi 1 tập tin khác (run.bat) call nó để sử dụng thì.... báo lỗi.
* run.bat source ^^
Code:
call config.bat

Thực ra là call được, nhưng bị là ngay chỗ có khoảng trắng ở phía sau giá trị a&b kia. Bực mình thêm phát lệnh trong thằng run.bat để nó xử lý, test trong win thì ok, ra dos..... chả hiểu luôn.
* run.bat edited
Code:
call config.bat
set xdrv1=%drv1:~0,1%
set xdrv2=%drv2:~0,1%

* Test.bat source
Code:
echo Drive "xdrv1"
echo Drive "xdrv2"

=> Thì trong Win (run trong CMD windows XP) nó hiện là
Code:
c:\test.bat
Drive "a"
Drive "b"

Tưởng ngon cơm, chạy ngoài DOS (Boot bằng CD) nó lại hiện....
Code:
c:\test.bat
Drive ""
Drive ""
.

Cho hỏi, có ai có cách nào đưa 2 cái drv1 & drv2 vào trong tập tin config.bat mà nó không có khoảng trắng ở phía sau? Hoặc xử lý chỉ lấy 1 giá trị đầu tiên giống như ở trên (set xdrv1=%drv1:~0,1% ....) ?!

Xin cảm ơn trước. smilie
[Up] [Print Copy]
  [Question]   Lệnh trong DOS 03/05/2011 22:16:40 (+0700) | #2 | 236599
KuTy91
Member

[Minus]    0    [Plus]
Joined: 28/07/2009 18:22:34
Messages: 18
Offline
[Profile] [PM]

BlueBird wrote:

Cho hỏi, có ai có cách nào đưa 2 cái drv1 & drv2 vào trong tập tin config.bat mà nó không có khoảng trắng ở phía sau? 


Bạn đừng để khoảng trắng sau %choice1% và %choice2%

Code:
echo set drv1=%choice1%>>config.bat
echo set drv2=%choice2%>>config.bat
Kí ra răng? smilie
[Up] [Print Copy]
  [Question]   Lệnh trong DOS 04/05/2011 09:30:45 (+0700) | #3 | 236608
[Avatar]
BlueBird
Member

[Minus]    0    [Plus]
Joined: 19/07/2003 04:08:08
Messages: 288
Location: Bến Thượng Hải
Offline
[Profile] [PM]
Ố ồ, sori.....

Trên ví dụ là tớ để giá trị đó là "chữ" trong khi cái tool của tớ làm lại là số ^^, nếu để là các kí tự chữ thì ok, nhưng để là số thì không được smilie
* Nhập....
Code:
%choice1%=1
%choice2%=2

Lúc đó thì đưa vô thằng config.bat thì bị lỗi
Code:
echo set drv1=%choice1% >>config.bat
echo set drv2=%choice2% >>config.bat

=> Nội dung tập tin config.bat....Code:
set drv1=

=> mất ngon.

-------------------------------------------Update
Đã xong smilie, loay hoay một hồi thì cũng có cách mà không biết có phải là tốt nhất chưa, nhưng cũng đáp ứng được yêu cầu. Thêm vài đoạn sau vào trong Run.bat sau dòng call config.bat
Code:
if %drv1%=1 set drv1=1
if %drv1%=2 set drv1=2
if %drv1%=n set drv1=n

Chắc phải làm thêm cái for cho nó gọn, mà chả biết có được không nữa, chút nữa về test sau ^^.

Have a good day everyone

[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|