यहां आप जाते हैं ... (उम्मीद है कि मुझे कोई भी इसे हरा नहीं देगा ...) (आपको फ़ाइल को lasttext.bat या कुछ के रूप में सहेजने की आवश्यकता होगी) यह सबसे पुराना .txt खोल देगा/चलाएगा फ़ाइल
dir *.txt /b /od > systext.bak
FOR /F %%i in (systext.bak) do set sysRunCommand=%%i
call %sysRunCommand%
del systext.bak /Y
शायद एक्सपी केवल। डॉस की शक्तिशाली शक्ति BeHOLD।
हालांकि यह नवीनतम फ़ाइल नाम तारीख तक लेता है - फाइलनाम द्वारा नहीं ..
यदि आप नवीनतम फ़ाइल नाम प्राप्त करना चाहते हैं, तो बदलें/od चालू/चालू करें।
यदि आप किसी और चीज को सॉर्ट करना चाहते हैं, तो दूसरी पंक्ति में "सॉर्ट" कमांड जोड़ें। , रिवर्स में
@echo off
for /F %%i in ('dir /B /O:-D *.txt') do (
call :open "%%i"
exit /B 0
)
:open
start "dummy" "%~1"
exit /B 0
इस विधि, तथापि, वर्णमाला क्रम में पिछले फ़ाइल चुनता है (या पहले एक:
क्या आप मुझे बता सकते हैं कि लाइन 2 में %% क्या करता है और% 7 1 लाइन 7 में क्या करता है? धन्यवाद! – Keng
%% मैं लूप वैरिएबल है (यह प्रत्येक पंक्ति में पहले शब्द का मान प्राप्त करेगा जो कि मानक आउटपुट में कोष्ठक के अंदर कमांड लिखता है)। % 1 स्क्रिप्ट या लेबल (जैसे मेरे मामले में) को दिए गए कमांड लाइन तर्क तक पहुंचने का एक आसान तरीका है। % ~ 1, हालांकि, उद्धरण हटा देता है (यदि कोई है)। – Paulius
विल्नीयस, लिथुआनिया ...? .... हम्मम्म ... मैं वहां एक प्रोग्रामर जानता हूं ... गिंटारस डिज्जगाल्विस, वह क्विकमैक्रोस (http://QuickMacros.com) बनाता है। आपको उसे कभी-कभी देखना चाहिए। – Keng