Windows कमांड प्रॉम्प्ट में निर्मित तिथि के अनुसार फ़ाइलों को लोड करने के लिए कैसे


2

SQL सर्वर में xp_cmdshell का उपयोग करके, मैं उदाहरण के लिए एक कमांड का उपयोग करके संशोधित तिथि के अनुसार फाइलें लोड करने में सक्षम था ,

z: & forfiles /m *.jpg /s /d 07/16/2015 /c “cmd /c echo @fdate @ftime @path”

लेकिन मुझे पता है कि क्रिएटेड डेट के हिसाब से फाइल लोड करना है । किसी भी मदद को बहुत सराहा जाएगा।

स्टैकओवरफ़्लो पर एक प्रश्न पूछा गया है, लेकिन अभी तक कोई जवाब नहीं है। कृपया विवरण के लिए लिंक पर एक नज़र डालें कि SQL Server के xpcmcmhell के माध्यम से Windows कमांड प्रॉम्प्ट में निर्मित तिथि के अनुसार फ़ाइलों को कैसे लोड किया जाए


मैं forfiles से परिचित नहीं हूं और यह लाइन सरल नहीं लगती है, और मैं संभवतः आपके प्रश्न को गलत समझ रहा हूं और यह प्रासंगिक नहीं हो सकता है लेकिन यह कैसे dir /?दिखा रहा है dir /t:cकि सृजन का समय
कैसा है

धन्यवाद @barlop, क्षमा करें कि मेरा प्रश्न पर्याप्त स्पष्ट नहीं है, वास्तव में मैं सभी फ़ाइल नामों को एक्सटेंशन ".jpg" के साथ लोड करना चाहता हूं, जिसमें बनाई गई तिथियां और पूर्ण निर्देशिका पथ एक तालिका में संग्रहीत किया जाना है। एक उदाहरण परिणाम कुछ इस तरह होना चाहिए8/18/2015 11:13:08 AM "Z:\LDB1 App Export\Top Star_Aluminium Frames & Furniture (B)-31267.jpg"
kolunar

मुझे पता है तुम्हारा क्या मतलब है। मैं सिर्फ यह परीक्षण किया है, for /f "eol=: delims=" %F in ('dir /b /s') do @echo %~ftzaF लेकिन यह काम नहीं करता है। % TF निर्माण समय नहीं दिखाता है .. dir पर भी / t: c के साथ। तो मुझे यकीन नहीं है
बार्लोप

अगर आपके पास एसी तेज कंपाइलर है तो आप इस pastebin.com/raw.php?i=6fGPGDBc को संकलित कर सकते हैं, तो यह pastebin.com/raw.php?i=eJV8zYcd की तरह चलेगा ताकि आप रास्ते में मदद करने के लिए इस छोटे से प्रोग्राम का उपयोग कर सकें। वह करना जो आप चाहते हैं ... हालांकि यह थोड़ा धोखा है।
बार्लॉप

यह आगे बढ़ता है इसलिए यह उस छोटे से प्रोग्राम का उपयोग करता है जो इसे सभी txt फ़ाइलों पर चलाता है जिसे आप txt को jpg pastebin.com/8U0GWP0j पर बदल सकते हैं ताकि सभी फ़ाइलों और उनके निर्माण समय को सूचीबद्ध किया जा सके । आप उस आउटपुट को किसी फ़ाइल में रख सकते हैं और फ़ाइल टाइप करें | "02/06/2010" या जो भी तारीख आप चाहते हैं
पाएं

जवाबों:


0

यह थोड़ा धोखा दे रहा है, क्योंकि इसमें आपको एक छोटा सा कार्यक्रम संकलित करना है जो ऐसा करने में मदद करता है। इसमें थोड़ा सरल c # प्रोग्राम शामिल है लेकिन ज्यादातर cmd।

सोच यह है, अगर केवल cmd में एक प्रोग्राम / कमांड शामिल होता है जो फ़ाइल नाम देते समय, एक लाइन, फ़ाइल के पूर्ण पथ और निर्माण तिथि / समय पर देता है। तब cmd में कोई भी cmd कमांड के लिए उपयोग कर सकता है, जो कि हर फाइल के लिए (शो फाइल का पथ और निर्माण तिथि / समय) कमांड को लागू करता है। इसलिए मैंने एक छोटा सा प्रोग्राम लिखा है जो एक फ़ाइल नाम ले सकता है और अपना पूर्ण पथ और निर्माण तिथि / समय दिखा सकता है। और फिर मैं इसे cmd में उपयोग करता हूं।

कार्यक्रम..

C:\blah>type a.cs
using System.IO;

class asdf
{

 public static void Main(string[] args) {
    if(args.Length==0) {
         System.Console.WriteLine("Pass a filename");
         return;
     }
    System.IO.FileInfo fileInfo = new FileInfo(args[0]);
    System.Console.Write(fileInfo.FullName+"      ");

     System.DateTime creationTime = fileInfo.CreationTime;
    System.Console.WriteLine("cdt "+creationTime);

     }


}
C:\blah>

इसका संकलन कर रहे हैं

C:\blah>csc a.cs
Microsoft (R) Visual C# Compiler version 4.0.30319.18408
for Microsoft (R) .NET Framework 4.5
Copyright (C) Microsoft Corporation. All rights reserved.


C:\blah>

ताकि a.exe बनाता है

a.exe एक छोटा सा प्रोग्राम है कि जब एक पैरामीटर के रूप में फ़ाइल नाम दिया जाता है, तो पूर्ण पथ और निर्माण तिथि / समय देता है

C:\blah>a.exe w.obj<ENTER>
C:\blah\w.obj      cdt 25/07/2015 1:03:52 AM

C:\blah>

शेष cmd है

यदि आपके पास C # कंपाइलर नहीं है

मैंने a.cs (ऊपर स्रोत कोड) a.exe में एक लिंक शामिल किया है और चूंकि क्रोम किसी भी exe को अवरुद्ध करने की कोशिश करता है, आप a.ex2 डाउनलोड कर सकते हैं और उसका नाम बदल सकते हैं। या जब क्रोम एक्स को ब्लॉक करने की कोशिश करता है तो "बर्खास्त" कहें और क्रोम के भीतर डाउनलोड करने के लिए जाएं और फ़ाइल को पुनर्प्राप्त करें। लेकिन हालाँकि आप इसे करना चाहते हैं, आप उस EXE को प्राप्त कर सकते हैं। हो सकता है कि दृश्य स्टूडियो एक्सप्रेस (दृश्य स्टूडियो के एक छोटे संस्करण की तरह) में csc.exe होगा जो आपको इसे संकलित करने की अनुमति देता है, यदि आप उस तरह से करना चाहते हैं।

http://ge.tt/2LdAiGN2

एक बार जब आपके पास वह छोटा सा कार्यक्रम है तो आप इसे cmd में कर सकते हैं

c:\blah>for /r %f in (*.jpg) do @a.exe %f
c:\blah\a.jpg      cdt 31/07/2015 3:55:40 PM
c:\blah\a10.jpg      cdt 3/11/2013 8:19:07 AM
c:\blah\a11.jpg      cdt 3/11/2013 8:19:16 AM
c:\blah\a12.jpg      cdt 3/11/2013 8:48:45 AM
C:\blah\dff\Calendar.jpg      cdt 25/08/2009 3:00:02 AM
C:\blah\dff\CheckDST.jpg      cdt 28/07/2005 2:00:02 AM

तो आप क्या कर सकते हैं, उस कमांड को करें लेकिन एक फाइल में डंप कर दें

C:\blah>del mynewfile.a

C:\blah>for /r %f in (*.jpg) do @a.exe %f >>mynewfile.a

C:\blah>

तब आप खोज या gnuwin32 के grep का उपयोग कर सकते हैं

C:\blah>find "22/05/2015" mynewfile.a

---------- MYNEWFILE.A
C:\blah\sdff\a.jpg      cdt 22/05/2015 5:54:53 AM
C:\blah\sdff\a2.jpg      cdt 22/05/2015 6:20:40 AM
C:\blah\sdff\b.jpg      cdt 22/05/2015 5:56:12 AM

या gnuwin32 के grep के साथ

C:\blah>grep "22/05/2015" mynewfile.a
C:\blah\sdff\a.jpg      cdt 22/05/2015 5:54:53 AM
C:\blah\sdff\a2.jpg      cdt 22/05/2015 6:20:40 AM
C:\blah\sdff\b.jpg      cdt 22/05/2015 5:56:12 AM

C:\blah>
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.