किसी एक एक्सटेंशन वाली फाइलों का चयन करना, जिनका नाम एक अलग एक्सटेंशन वाली फाइलों के समान है


1

मेरे पास छवियों के दो फ़ोल्डर हैं। एक फ़ोल्डर में हैं .JPGs, जैसे

  • 001.jpg
  • 002.jpg
  • 003.jpg
  • 004.jpg
  • 005.jpg
  • 006.jpg
  • 007.jpg
  • 008.jpg

दूसरे फ़ोल्डर में, .NEFएस हैं। हालाँकि, कुछ में से कुछ .NEFको हटा दिया गया है, इसलिए उदाहरण हैं

  • 001.nef
  • 003.nef
  • 004.nef
  • 005.nef
  • 008.nef

Jpgs और nefs एक दूसरे के साथ मेल खाते हैं - वे एक ही यूफ़िक्स डेटा के साथ एक ही समय में ली गई एक ही तस्वीर हैं (दो अलग-अलग मेमोरी कार्ड में सहेजे गए)

जो मैं करना चाहता हूं वह .JPGs का चयन करें जो शेष के अनुरूप है। NEFs उपरोक्त उदाहरण में मैं JPGs 1,3,4,5,8 का चयन करना चाहता हूं, लेकिन अन्य नहीं। मेरे पास लगभग 400 jpgs और 800 nefs हैं।

मैंने विज़ुअलडिफायर जैसे फ़ोल्डर तुलना ऐप का उपयोग करने की कोशिश की है, हालांकि वे केवल तभी काम करते हैं जब आप उसी पूर्ण फ़ाइल नाम + एक्सटेंशन का उपयोग कर रहे हों।

क्या किसी को पता है कि इसे खोजने या टर्मिनल का उपयोग करना संभव हो सकता है? या वैकल्पिक रूप से एक अलग ऐप के साथ?

मैं मैक OSX 10.6.8 का उपयोग कर रहा हूं

धन्यवाद!


1
एक बार चुने जाने के बाद आप फ़ाइलों के साथ क्या करना चाहते हैं?
nohillside

जवाबों:


2

टर्मिनल खोलें और * .nef को अपनी वर्तमान निर्देशिका की निर्देशिका बनाने के लिए सीडी का उपयोग करें। मान लें कि आपके पास यह संरचना है:

mydir / jpegdir mydir / nefdir

तो सीडी में mydir / nefdir

फिर:

mkdir newdir
for file in *.nef; do 
    root=${$file%.nef}; 
    jpeg=${root}.jpg; 
    mv ../jpegdir/${jpeg} ./newdir/
done

नीचे उदाहरण है। यहाँ ध्यान दें कि मैंने mv कमांड के सामने "इको" रखा है। आप इसे छोड़ना चाहते हैं, लेकिन मैं अक्सर इसका उपयोग करता हूं जब मैं जाँच कर रहा हूं कि एक स्क्रिप्ट वह कर रही है जो मैं इसे निष्पादित करने से पहले उम्मीद करता हूं। आप यह भी नहीं कहते कि आप फ़ाइलों के साथ क्या करना चाहते हैं, लेकिन उन्हें एक नए फ़ोल्डर में ले जाने से आप उन्हें चुन सकते हैं, और आप हमेशा उन्हें वापस ले जा सकते हैं। मैंने अपने tmp चर नामों को भी छोटा कर दिया।

$ ls -R
total 0
drwxrwxr-x  4 tim  staff  136 Jun 13 08:02 .
drwx------  9 tim  staff  306 Jun 13 08:02 ..
drwxrwxr-x  8 tim  staff  272 Jun 13 08:03 jpegdir
drwxrwxr-x  5 tim  staff  170 Jun 13 08:03 nefdir

./jpegdir:
total 0
drwxrwxr-x  8 tim  staff  272 Jun 13 08:03 .
drwxrwxr-x  4 tim  staff  136 Jun 13 08:02 ..
-rw-rw-r--  1 tim  staff    0 Jun 13 08:03 foo1.jpeg
-rw-rw-r--  1 tim  staff    0 Jun 13 08:03 foo2.jpeg
-rw-rw-r--  1 tim  staff    0 Jun 13 08:03 foo3.jpeg
-rw-rw-r--  1 tim  staff    0 Jun 13 08:03 foo4.jpeg
-rw-rw-r--  1 tim  staff    0 Jun 13 08:03 foo5.jpeg
-rw-rw-r--  1 tim  staff    0 Jun 13 08:03 foo6.jpeg

./nefdir:
total 0
drwxrwxr-x  5 tim  staff  170 Jun 13 08:03 .
drwxrwxr-x  4 tim  staff  136 Jun 13 08:02 ..
-rw-rw-r--  1 tim  staff    0 Jun 13 08:03 foo2.nef
-rw-rw-r--  1 tim  staff    0 Jun 13 08:03 foo3.nef
-rw-rw-r--  1 tim  staff    0 Jun 13 08:03 foo5.nef

$ cd nefdir/
$ mkdir newdir/

$ for f in *.nef; do g=${f%.nef}; h=$g.jpeg; echo mv ../jpegdir/$h ./newdir; done
mv ../jpegdir/foo2.jpeg ./newdir
mv ../jpegdir/foo3.jpeg ./newdir
mv ../jpegdir/foo5.jpeg ./newdir
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.