मैं एक फ़ोल्डर और उसके सभी सबफ़ोल्डरों में सभी .cr2 फ़ाइलों को खोलने के लिए शॉटवेल चाहता हूं, मैं किस कमांड लाइन का उपयोग करूं?


9

कुछ इस तरह

shotwell *.cr2 ./

यह काम नहीं करता है, लेकिन मूल रूप से मैं सभी फ़ाइलों को खोलने के लिए .cr2और वर्तमान निर्देशिका में (सबफ़ोल्डर्स सहित) शॉटवेल का उपयोग करना चाहता हूं

संदर्भ यह है कि मुझे अपने कैमरे से गायब हुई तस्वीरें याद आ रही हैं, जिन्हें मैंने अपने मेमोरी कार्ड से हटा दिया है।

शॉटवेल की "लापता छवियों" में उनके लिए थंबनेल हैं, लेकिन मैं उन्हें नहीं ढूंढ सकता। इसलिए मुझे लगा कि मैं photorecउन्हें ढूंढने की कोशिश करूंगा। परिणामस्वरूप फोटोरेक ने मुझे फ़ोल्डर्स और फ़ाइलों का एक नाव लोड दिया, पर्याप्त है कि इसने मेरी हार्ड ड्राइव को भर दिया। एक-एक करके सभी फ़ाइलों के माध्यम से जाने के बजाय, मैंने अपनी हार्ड ड्राइव पर .cr2 फ़ाइलों की खोज करने का निर्णय लिया, जबकि एक विशेष फ़ोल्डर से बचने के लिए जिसे Photogsमुझे पता है कि उनके पास नहीं है क्योंकि वे photorecडेटा डंप का हिस्सा नहीं थे ।


@EliahKagan यहाँ विस्तार के लिए टिप्पणियाँ (जो चैट में जारी रही!) देखें । मुझे यकीन नहीं है कि प्रश्न को संपादित करना है या नहीं, इसलिए कृपया सलाह दें, कि आपने ऐसा सुंदर उत्तर बनाया है
Zanna

@ user285884 मेरे उत्तर के सबसे हाल के सम्पादनों में सिर्फ .cr2 फाइलों के लिए प्रतीकात्मक लिंक का एक पेड़ बनाने के लिए एक विस्तृत प्रक्रिया शामिल है, जिसे तब शॉटवेल (और कुछ अन्य तरीकों) में खोला जा सकता है। यह शॉटवेल में अतिरिक्त, गैर .cr2 फ़ाइलों के साथ-साथ फ़ाइलों को स्थानांतरित या कॉपी करने के लिए गंतव्य डिवाइस पर पर्याप्त स्थान नहीं होने की समस्या को दूर करना चाहिए। मुझे यकीन नहीं था, प्रासंगिक चैट से , यदि आपने इसे अभी तक हल किया है।
एलियाह कगन

जवाबों:


6

आमतौर पर, आप बस शॉटवेल को खोलना और फ़ोल्डर में खींचना चाहेंगे।

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

शॉटवेल यह सुनिश्चित करने के लिए कि केवल उन छवियों के बारे में जानता है जिनमें आप रुचि रखते हैं, आप डायरेक्टरी ट्री को कहीं और क्लोन कर सकते हैं, केवल .cr2फाइलों और उन फ़ोल्डरों को कॉपी कर सकते हैं जिनमें उन्हें शामिल किया गया है, लेकिन कुछ और नहीं। हालांकि, इसमें अतिरिक्त अतिरिक्त जगह हो सकती है। इसलिए एक और तरीका यह है कि प्रतीकात्मक संबंधों की एक पदानुक्रम का निर्माण किया जाए - जहाँ आपकी मूल फ़ाइलों की प्रतियों की एक नई निर्देशिका ट्री होने के बजाय .cr2, आपके पास उनके लिए एक नई निर्देशिका ट्री ऑफ़ सीमिंक है । यह काफी कम जगह लेता है।

यह उत्तर उन सभी दृष्टिकोणों को शामिल करता है।

शॉटवेल में छवियों का फ़ोल्डर खोलना (सबफ़ोल्डर्स सहित)

शॉटवेल खुद आपको तस्वीरों की एक पूरी डायरेक्टरी ट्री खोलने के दो तरीके देता है। यदि ये आपके लिए काम करेंगे, तो आपको कमांड लाइन में कुछ भी चालाक करने की आवश्यकता नहीं होगी या इसका उपयोग बिल्कुल भी नहीं किया जाएगा। यदि नहीं, तो आप किसी अन्य तकनीक के संबंध में ऐसा कर सकते हैं। (उदाहरण के लिए, यदि आप अपनी .cr2फ़ाइलों की सहानुभूति या प्रतियों की नई निर्देशिका बनाते हैं, तो आप इसे खोलने के लिए इनमें से किसी एक का उपयोग कर सकते हैं।)

तरीका 1: बस Shotwell में पूरा फ़ोल्डर खोलें।

Shotwell में, फ़ाइल मेनू में, फ़ोल्डर से आयात करें पर क्लिक करें । फिर उस फ़ोल्डर का चयन करें जिसे आप छवियों से आयात करना चाहते हैं। यह .cr2फ़ाइलों तक सीमित नहीं होगा , लेकिन यदि आप .cr2एक डिजिटल कैमरे से बनाई गई छवियों वाले कई सबफ़ोल्डर्स से फाइलें खोल रहे हैं , तो सबसे अधिक संभावना है कि वे केवल मौजूद फाइलें होंगी।

शॉटवेल के फ़ाइल मेनू में फ़ोल्डर मेनू आइटम से आयात का स्क्रीनशॉट।

अधिक जानकारी के लिए सभी चित्रों को पुनरावर्ती (किसी भी सबफ़ोल्डर शामिल करें) दिखाने के लिए जैकब का उत्तर देखें ।

तरीका 2: फोल्डर को शॉटवेल में खींचें।

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

मेरे स्क्रीनशोट में मेरे डेस्कटॉप फोल्डर को शॉटवेल में खींचकर उसमें मौजूद छवियों को आयात करना है।

जब आप फ़ाइल ब्राउज़र विंडो या अपने डेस्कटॉप से ​​शॉटवेल में खींचते हैं, तो आप एक विशिष्ट पुस्तकालय में खींच सकते हैं। या यदि आपके पास कई पुस्तकालय स्थापित नहीं हैं, तो आप मूल रूप से कहीं भी खींच सकते हैं और यह काम करता है। (आपको बाएँ फलक में खींचने की भी ज़रूरत नहीं है।)

यह विधि बहुत सुविधाजनक है, और यह मैन्युअल रूप से फ़ोल्डर का चयन करने के रूप में शक्तिशाली है ( फ़ाइल > फ़ोल्डर से आयात , जैसा कि ऊपर वर्णित है)। जब आप इन विधियों में से किसी एक का उपयोग करके फ़ाइलों या फ़ोल्डरों को खोलते हैं, तो शॉटवेल आपको फोटो को उसकी लाइब्रेरी में कॉपी किए बिना खोलने का विकल्प देता है।

शॉटवेल में संवाद बॉक्स का स्क्रीनशॉट जो उपयोगकर्ता को अपने शॉटवेल पुस्तकालय के स्थान पर छवियों को कॉपी करने के बीच चुनने के लिए कहता है, या उन्हें बिना किसी नकल के स्थान पर आयात करता है।

नकल के बिना आयात करने के लिए, कॉपी फ़ोटो के बजाय आयात करें पर क्लिक करें ।


इमेज फिल्म्स की सूची के साथ शॉटवेल को लॉन्च करना

यदि किसी कारण से आप चाहते हैं या टर्मिनल में एक कमांड चलाकर ऐसा करने की आवश्यकता है, तो आप shotwellकमांड को चला सकते हैं और प्रत्येक छवि के फ़ाइलनाम को एक तर्क के रूप में पास कर सकते हैं। ग्लोबस्टार यह आसान बनाता है:

shopt -s globstar
shotwell **/*.cr2

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

यह फाइल या सबफ़ोल्डर जिनके नाम के साथ शुरू शामिल नहीं है. । हालाँकि, अगर आपके पास CR2 फाइलें हैं, जिनके नाम एक डॉट के साथ शुरू होते हैं, तो अधिकांश समय आप शायद उन्हें वैसे भी शॉटवेल में खोलना नहीं चाहते हैं। जब तक आपने जानबूझकर अपनी फ़ाइलों या फ़ोल्डरों का नाम इस तरह नहीं रखा है, तब तक किसी इमेज या डॉक्यूमेंट फाइल एक्सटेंशन के साथ एक डॉटफाइल एक वास्तविक छवि या दस्तावेज़ के बजाय मेटाडेटा फ़ाइल होने की अधिक संभावना है। उदाहरण के लिए, macOS अक्सर बाहरी मीडिया (फ्लैश ड्राइव और डिजिटल कैमरा सहित) तक पहुंचते समय ऐसी फाइलें (जैसे, ._kittens.cr2एक वास्तविक तस्वीर के लिए kittens.cr2) जोड़ता है

यदि आप ऐसी फाइलें भी ढूंढना.. चाहते हैं, जिनके नाम से शुरू होता है या जो उन फ़ोल्डरों में हैं जिनके नाम से शुरू होता है , तो डॉटग्लोब को भी सक्षम करें। आप के साथ ऐसा कर सकते हैं shopt -s dotglobया दोनों पारित करके globstarऔर dotglobकरने के लिए shoptनिर्मित:

shopt -s globstar dotglob

डिफ़ॉल्ट रूप से, ग्लोब केस-संवेदी होते हैं। लेकिन आप चाहते हो सकता है फ़ाइल नाम से मेल करने के मामले-insensitively तो में समाप्त होने खुली फ़ाइलों के रूप में, .cr2, .Cr2, .cR2, और .CR2। ऐसा करने के लिए, या तो:

  • चलाकर nocaseglob सक्षम shopt -sके साथ nocaseglobया तो अपने आप में या अन्य खोल विकल्पों के साथ। उदाहरण के लिए, shotwellसभी .cr2फाइलों को चलाने के लिए, केस- .इनसेंसिटिव और इन-फाइल्स और इन-फाइल्स में फाइलों को .खोजना:

    shopt -s globstar dotglob nocaseglob
    shotwell **/*.cr2
    
  • या फिर , का उपयोग .[cC][rR]2करने के बजाय .cr2अपने ग्लोब पैटर्न अपने आप में। उदाहरण के लिए, यह ऊपर के समान है:

    shopt -s globstar dotglob
    shotwell **/*.[cC][rR]2
    

    ध्यान दें कि केस सेंसिटिविटी पूरी तरह से अलग है कि .फाइल और फोल्डर मैच हुए हैं या नहीं । आप dotglobऊपर दिए गए उदाहरणों से हटा सकते हैं और वे अभी भी मामले-असंवेदनशील हो सकते हैं।

केवल वर्तमान निर्देशिका का उपयोग करने के बजाय एक निर्देशिका निर्दिष्ट करने के लिए , अपना नाम और एक ग्लोब /से पहले रखें **/*.cr2। उदाहरण के लिए, shotwellइस के साथ ऊपर दिए गए कमांड को बदलने से आपके होम डायरेक्टरी .cr2की Picturesउपनिर्देशिका के अंदर सभी फाइलें खुल जाएंगी :

shotwell ~/Pictures/**/*.cr2

अपनी वर्तमान निर्देशिका का उपयोग करने वाली पहली कमांड के विपरीत, कोई फर्क नहीं पड़ता कि आप उस कमांड को चलाते हैं या नहीं, आप उसी फाइल को खोलने के लिए शॉटवेल को बताएंगे।

परिक्षण

यदि आपको वास्तव में इसके लिए टर्मिनल का उपयोग करना है, तो मैं अनुमान लगा रहा हूं कि यह कुछ अधिक जटिल का हिस्सा हो सकता है। आप चाहें, तो आप वास्तव में उन्हें बदल कर चलाने से पहले इस तरह के आदेशों का परीक्षण कर सकते shotwellके साथ printf '%s\n'। फिल्मनामों को शॉटवेल में पारित करने के बजाय, वह उन्हें प्रति पंक्ति एक सूची देता है। उदाहरण के लिए, मेरी मशीन पर:

ek@Io:~$ printf '%s\n' ~/tmp/**/*.cr2
/home/ek/tmp/another image.cr2
/home/ek/tmp/image.cr2
/home/ek/tmp/some folder/image3.cr2

ग्लोबस्टार और अन्य शेल विकल्प बंद करना

ग्लोबस्टार शेल विकल्प को काम करने के लिए सक्षम किया गया है, जो कि shopt -s globstarकमांड (ऊपर) ने किया है। यदि यह पहले से ही सक्षम है, तो आपको कई कमांड की आवश्यकता नहीं है। और आपको केवल शेल उदाहरण के अनुसार ग्लोबस्टार सेट करने की आवश्यकता है।

आप चल कर ग्लोबस्टार को बंद कर सकते हैं:

shopt -u globstar

और अगर आप कर सकते हैं की जाँच करें कि क्या globstar चालू या बंद चलाकर है:

shopt globstar

यदि आप किसी स्क्रिप्ट में ग्लोबस्टार का उपयोग कर रहे हैं, तो आपको इसे वापस बंद करने पर विचार करना चाहिए यदि कोई कोड हो सकता है जो उसी स्क्रिप्ट में बाद में आता है जो ग्लोबस्टार को ध्यान में रखकर नहीं लिखा गया है। उदाहरण के लिए, **जब आप मतलब लिखते हैं तो *आमतौर पर कोई समस्या नहीं होती है जब ग्लोबस्टार को अक्षम किया जाता है, लेकिन ग्लोबस्टार चालू होने के बाद, यह कमांड को प्रभावित करने की गंभीर समस्या पैदा कर सकता है, जो किसी भी उद्देश्य से अधिक फ़ाइलों को प्रभावित करता है।

इसी प्रकार, यदि आप dotglob या nocaseglob इस्तेमाल किया और तुम भी उन्हें बंद करना चाहते हैं, तो आप ऐसा साथ कर सकते हैं shopt -u dotglobऔर shopt -u nocaseglobक्रमश:। आप shopt -uउन्हें एक ही समय में अनसेट करने के लिए कई शेल विकल्प भी पास कर सकते हैं । उदाहरण के लिए, बंद करने के लिए globstar, dotglob, और nocaseglob:

shopt -u globstar dotglob nocaseglob

ग्लोबस्टार की तुलना में, कम गंभीर गलतियाँ हैं जो आप कर सकते हैं क्योंकि आप भूल गए थे कि आपने डॉटग्लोब या नोसेसेग्लोब को छोड़ दिया है। लेकिन अन्य लोग (उन लोगों को भी शामिल करें जिन्हें आप उबंटू जैसी साइटों पर सलाह देते हैं) आमतौर पर मान लेते हैं कि जब तक आप उन्हें अन्यथा नहीं बताते, तब तक वे उपयोग करने की आज्ञा देने के लिए डॉटग्लोब और नोसेग्लोब अक्षम हैं।

इन ग्लोब-संबंधित शेल विकल्पों के बारे में अधिक जानकारी के लिए (और सामान्य रूप से ग्लब्स पर भी ), बैश संदर्भ मैनुअल देखें । वे सभी मुख्य रूप से 4.3.2 द शॉपट बिल्डिन में शामिल हैं । ग्लोबस्टार के लिए, 3.5.8.1 पैटर्न मिलान भी देखें । डॉटग्लोब के लिए, 3.5.8 फ़ाइलनाम विस्तार भी देखें ।


एक नई निर्देशिका ट्री का निर्माण

चूंकि आपके मामले में आपको वास्तव में केवल .cr2 फाइलों को दिखाने के लिए शॉटवेल की जरूरत है , आपके पास गैर- .cr2फाइलें फाइलों के साथ एक ही फ़ोल्डर में हैं .cr2, और शॉटवेल में छवि ब्राउज़िंग स्वचालित रूप से उन फाइलों को भी पेश कर रही है , ऐसा लगता है कि आपको एक फ़ोल्डर की आवश्यकता होगी जिन .cr2फ़ाइलों को आप खोलने का प्रयास कर रहे हैं , उनकी तुलना में कोई अन्य छवि फ़ाइलें नहीं हैं।

फ़ाइलों को स्थानांतरित करना, जैसा कि आपने सुझाव दिया है , एक दृष्टिकोण है, लेकिन मैं इसके बजाय फ़ाइलों की प्रतिलिपि बनाने या, बेहतर, फ़ाइलों की प्रतीकात्मक लिंक बनाने की सलाह देता हूं (यह भी देखें FOLDOC ), क्योंकि:

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

आपके लिए एक और निर्णय भी है। क्या आप एक ही डायरेक्टरी में सभी नई प्रविष्टियाँ (चाहे वे कॉपियाँ या सिम्बलिंक्स हों) बनाते हैं, फ़ाइल पदानुक्रम को चपटा करते हैं? या आप कम से कम एक .cr2फ़ाइल वाले स्रोत पर प्रत्येक निर्देशिका के अनुरूप गंतव्य पर निर्देशिका बनाते हैं ?

  • फ़ाइल पदानुक्रम को समतल करने से आप आसानी से एक बार में सभी फ़ाइलों को देख सकते हैं। विशेष रूप से, फ़ाइलों के नाम और आकार सभी को एक साथ देखना आसान है, साथ ही साथ चित्रमय फ़ाइल ब्राउज़र में फ़ाइलों के किसी भी संयोजन का चयन करना आसान है।

  • लेकिन यह इस बारे में भी जानकारी खो देता है कि वे किन फ़ोल्डरों में थे, जो मूल्यवान हो सकते हैं (हालांकि आप मूल फ़ोल्डर में वापस आ सकते हैं और यदि आप फ़ाइलों को स्थानांतरित नहीं करते हैं तो वहां उनके लिए देख सकते हैं)।

  • फ़ाइल पदानुक्रम को समतल करने के साथ बड़ी समस्या, हालांकि, अगर आपके पास अलग-अलग स्थानों में एक ही नाम की दो या अधिक फाइलें हैं , तो क्या होता है । यदि आप फ़ाइल पदानुक्रम को समतल करते हैं, तो आप इसे कैसे करते हैं, इस पर निर्भर करता है कि या तो सभी पहले कॉपी किए गए (या लिंक किए गए) विफल होंगे और आपको एक त्रुटि या चेतावनी मिलेगी, या सभी लेकिन अंतिम प्रतिलिपि (या लिंक) होगी अधिलेखित हो जाना ।

    यह एक और कारण है जो मैं फ़ाइलों को स्थानांतरित करने के बजाय कॉपी करने या सिम्बल बनाने की सलाह देता हूं। यदि आप "सफलतापूर्वक" एक से अधिक फ़ाइलों को एक ही फ़ाइल में ले जाते हैं, तो आप सभी को खो देते हैं, लेकिन अंतिम!

उपनिर्देशिका के बिना एक ही निर्देशिका में सब कुछ समतल करने के नुकसान के कारण, मैं जो दृष्टिकोण यहां ले रहा हूं वह गंतव्य पर एक नई निर्देशिका पेड़ का निर्माण करता है।

रास्ता 1: नकल

मैं इसे पहले दिखाता हूं क्योंकि यह थोड़ा सरल है, लेकिन मैं आपको इसके बजाय प्रतीकात्मक लिंक ("वे 2") बनाने का सुझाव देता हूं, खासकर यदि गंतव्य ड्राइव में सभी फाइलों को रखने के लिए पर्याप्त स्थान नहीं हो सकता है। "वे 2", जो थोड़ा अधिक जटिल है, बहुत अधिक विस्तृत है क्योंकि उस तकनीक का उपयोग करने के लिए कम संसाधन प्रतीत होते हैं, यह वह तरीका है जिससे मुझे उम्मीद है कि इस स्थिति में अधिकांश लोग पसंद करेंगे, और जानकारी जो दोनों विधियों पर लागू होती है - रास्तों में रिक्त स्थान से बचने के बारे में बुनियादी सलाह - यहाँ के बजाय वहाँ दी गई है।

जब आपको निर्देशिका ट्री की प्रतिलिपि बनाने की आवश्यकता होती है और आपको कॉपी ऑपरेशन को अनुकूलित करने की आवश्यकता होती है, तो आपको आमतौर पर rsyncइसके बजाय उपयोग करना चाहिए cp। यह उन मामलों में से एक है।

की जगह srcअपने सभी CR2 फ़ाइलों से युक्त शीर्ष स्तर की डायरेक्टरी के लिए पथ के साथ, और जगह destनिर्देशिका आप बनाना कि CR2 फ़ाइलें, चलाने के लिए सांकेतिक लिंक के एक पदानुक्रम में शामिल होंगे चाहते हैं उसका नाम के साथ:

rsync -rl --prune-empty-dirs --include='*/' --include='*.cr2' --exclude='*' src/ dest

/स्रोत निर्देशिका के नाम के बाद मत भूलना , जब तक कि आप एक अतिरिक्त शीर्ष-स्तरीय निर्देशिका नहीं बनाना चाहतेdest । है यही कारण है कि, अगर आप पीछे छोड़ देते हैं /, तो rsyncगंतव्य निर्देशिका आप के लिए अंदर कर देगा, dest। उदाहरण के लिए, मान लीजिए srcकि एक सापेक्ष पथ है जिसमें कोई नहीं है /। फिर:

  • साथ src/अपने में rsyncआदेश, आप एक सिमलिंक मिल dest/foo/bar.cr2फ़ाइल के लिए src/foo/bar.cr2
  • साथ srcअपने में rsyncआदेश, आप एक सिमलिंक मिल फ़ाइल के लिए ।dest/src/foo/bar.cr2src/foo/bar.cr2

चूँकि यह शीर्ष-स्तरीय निर्देशिका के लिए भ्रामक हो सकता है, जहाँ सह-नाम उसी नाम के लिए रखा जाएगा जो शीर्ष-स्तरीय निर्देशिका में .cr2फ़ाइलों के साथ है, जो सहानुभूति इंगित करेगा, मैं आपको /गंतव्य के अंत में शामिल करने की सलाह देता हूं आपके rsyncआदेश में निर्देशिका का नाम । (और, स्रोत निर्देशिका के लिए, इसे एक निर्देशिका दें जो खाली है, मौजूद नहीं है, या अन्यथा इस उद्देश्य के लिए समर्पित है। अन्यथा, आप किसी अन्य फ़ोल्डर को बंद कर देंगे।)

जैसा कि आम तौर मामला है, जब आप किसी फ़ाइल या एक कमांड लाइन कार्यक्रम या स्क्रिप्ट के लिए निर्देशिका का नाम पारित, यदि आपका गंतव्य या स्रोत निर्देशिका पथ किसी भी खाली रिक्त स्थान (या वर्ण खोल, की तरह से विशेष रूप से इलाज किया शामिल \, $, ', और विभिन्न अन्य विराम चिह्न), तो आपको उन्हें उद्धृत करना होगा । मैंने यह करने के लिए विस्तृत किया है कि रिक्त स्थान के सबसे सामान्य मामले के लिए, "वे 2" में - उस अनुभाग में उद्धृत करने के बारे में सलाह यहां भी लागू होती है। हालाँकि, यदि आप सुनिश्चित नहीं हैं कि किसी फ़ोल्डर का नाम कैसे उद्धृत किया जाए, तो आप फ़ोल्डर को केवल टेम्रामिनल में खींचकर उबंटू कर सकते हैं; इसका पूरा रास्ता सही उद्धरण के साथ चिपकाया जाएगा

सिर्फ .cr2फाइलों और फ़ोल्डरों को कॉपी करने के बाद , आप गंतव्य फ़ोल्डर को शॉटवेल में खोल सकते हैं। (ऊपर "शॉटवेल में छवियों का फ़ोल्डर खोलना (सबफ़ोल्डर्स सहित) देखें " ।) हालांकि, दौड़ने से पहले rsync, मैं आपको सलाह देता हूं कि यदि आप प्रविष्टियों को छोड़ना शुरू करते हैं .और यदि आप केस-वेरिएंट प्रत्ययों वाली प्रविष्टियों को शामिल करना चाहते हैं। यदि हां, तो आपको कुछ अलग rsyncकमांड चलाना होगा ।

डॉटेड एंट्रीज़ और केस सेंसिटिविटी की हैंडलिंग को कस्टमाइज़ करना

आप यह rsyncबदलने के लिए एक अलग कमांड का उपयोग करना चाह सकते हैं कि क्या फाइलें और निर्देशिकाएं जो डॉट के साथ शुरू होती हैं, छोड़ दी जाती हैं या नहीं और क्या आप प्रत्यय के मिलान में केस-सेंसिटिविटी चाहते हैं या नहीं .cr2

आदेश ऊपर करता है निर्देशिका और फ़ाइलें हैं जिनके नाम के साथ शुरू में शामिल हैं .ऐसी फ़ाइलों और निर्देशिकाओं को बाहर करने के लिए, --exclude='.*/' --exclude='.*'अन्य सभी --includeएस और --excludeएस के सामने रखें । rsyncइसके बजाय , इस आदेश का उपयोग करें ( srcऔर dest, के लिए उपयुक्त प्रतिस्थापन के साथ ):

rsync -rl --prune-empty-dirs --exclude='.*/' --exclude='.*' --include='*/' --include='*.cr2' --exclude='*' src/ dest

rsyncपता चला आदेशों अब तक केस-संवेदी किया गया है और उस में अंत फ़ाइलों की प्रतिलिपि नहीं होगा .CR2, .Cr2या .cR2के बजाय .cr2। यदि आप चाहते हैं कि ऐसी फ़ाइलों की प्रतिलिपि बनाई जाए, तो आपको उसके स्थान पर --includeपैटर्न का उपयोग करके उस खाते की आवश्यकता होगी ।*.[cC][rR]2*.cr2

यह तीसरी कमांड केस-असंवेदनशील है और (पहले कमांड की तरह) उन फाइलों और निर्देशिकाओं को नहीं छोड़ती जिनके नाम इसके साथ शुरू होते हैं .:

rsync -rl --prune-empty-dirs --include='*/' --include='*.[cC][rR]2' --exclude='*' src/ dest

यदि आप फ़ाइलों को कॉपी करने का तरीका अपनाते हैं rsync, और आपको यकीन नहीं है कि आप इनमें से कौन सी कमांड चाहते हैं, तो मैं सुझाव देता हूं कि यदि आप यह सुनिश्चित करना चाहते हैं कि आप कुछ भी याद न करें। हालाँकि, आपको पता होना चाहिए कि डॉटफ़ाइल्स में मेटाडेटा हो सकता है, और छवियों की तरह नामित डॉटफ़ाइल्स वास्तव में छवियां नहीं हो सकती हैं। ऊपर "इमेज फाइलनामों की सूची के साथ लॉन्चिंग शॉटवेल " में डॉटफाइल्स पर चर्चाएं देखें , और नीचे "वे 2" में डॉटफाइल्स और केस संवेदनशीलता पर।

यह चौथा आदेश है केस-संवेदी और (दूसरा आदेश की तरह) करता छोड़ फ़ाइलों और निर्देशिकाओं जिनके नाम के साथ शुरू .:

rsync -rl --prune-empty-dirs --exclude='.*/' --exclude='.*' --include='*/' --include='*.[cC][rR]2' --exclude='*' src/ dest

तरीका 2: प्रतीकात्मक लिंक बनाना

यह वही है जो मैं आपको करने की सलाह देता हूं, हालांकि यदि आप गंतव्य ड्राइव पर पर्याप्त स्थान रखते हैं, तो मार्ग 1 ठीक है। इसका उपयोग करने के लिए आपको रास्ता 1 नहीं पढ़ना होगा।

यहाँ प्रस्तुत विधि .cr2फ़ाइलों की सूची बनाती है और सूची के माध्यम से लूप बनाती है, आवश्यकतानुसार लक्ष्य निर्देशिकाओं का निर्माण करती है और उन्हें प्रत्येक .cr2फ़ाइल के प्रतीकात्मक लिंक के साथ पॉप्युलेट करती है।

यह सिर्फ इतना जटिल है कि मैं इसे अंतःक्रियात्मक रूप से टाइप करने के बजाय इसे स्क्रिप्ट में डालने का सुझाव देता हूं। आप जहां चाहें स्क्रिप्ट रख सकते हैं, लेकिन सुविधा के लिए, मैं दिखाता हूं कि इसे सीधे अपने होम फ़ोल्डर में रखी गई स्क्रिप्ट के साथ कैसे किया जाए।

स्क्रिप्ट लिखें या पेस्ट करें।

make-symlinksअपने होम फ़ोल्डर में , एक टेक्स्ट फ़ाइल बनाएं । कोई फ़ाइल एक्सटेंशन की आवश्यकता नहीं है।

आप इसे किसी भी टेक्स्ट एडिटर की तरह कर सकते हैं, जैसे विम, नैनो, गेडिट या लीफपैड। हालांकि, लिबर ऑफिस राइटर जैसे वर्ड प्रोसेसर का उपयोग न करें। ( यदि आप चाहते थे, तो आप cat > ~/make-symlinksफ़ाइल की सामग्री में पेस्ट करके , और एक नई लाइन पर Ctrl+ दबाकर, इसे चला भी सकते हैं D।)

यदि आप स्क्रिप्ट को इसके अलावा कुछ और नाम देते हैं make-symlinks, तो जब आप स्क्रिप्ट का उपयोग करने वाले कमांड चलाते हैं, तो उस नाम का उपयोग करना सुनिश्चित करें।

#!/bin/bash

shopt -s globstar dotglob nocaseglob

for f in **/*.cr2; do
    mkdir -p "$1/$(dirname "$f")"
    ln -s "$PWD/$f" "$1/$f"
done

उस फ़ाइल में रखें, और फ़ाइल को सहेजें। इस स्क्रिप्ट में ग्लोबस्टार का उपयोग किया गया है, जो एक बैश फीचर " इमेजिन लिस्टनेम की सूची के साथ लॉन्चिंग शॉटवेल " में ऊपर वर्णित है ।

आप बदल सकते हैं कि यह बिंदीदार प्रविष्टियों और मामले की संवेदनशीलता को कैसे संभालता है।

अपनी आवश्यकताओं के आधार पर, आप कुछ बदलाव करना चाहते हैं:

  • यदि आप उन .cr2फ़ाइलों को शामिल नहीं करना चाहते हैं जिनके नाम के साथ शुरू होता है .या जो उन निर्देशिकाओं में रहते हैं जिनके नाम के साथ शुरू होता है ., लाइन dotglobसे हटा दें shopt

    फ़ाइलें और निर्देशिकाएँ जिनके नाम से शुरू होता है ., अक्सर मेटाडेटा के लिए उपयोग की जाती हैं ( ऊपर चित्र खंडन की सूची के साथ "लॉन्चिंग शॉटवेल देखें " )। दूसरी ओर, यदि आप यह सुनिश्चित करना चाहते हैं कि आपके पास सब कुछ है, या यदि कोई ऐसी चीज़ है जो आपको याद नहीं है, तो आप सुनिश्चित हैं कि वहाँ है dotglob

  • आप शामिल करना चाहते हैं केवल वास्तव में है कि अंत फ़ाइलें .cr2लेकिन नहीं मामले वेरिएंट ( .CR2, .Cr2, और .cR2), तो आप निकाल देना चाहिए nocaseglob। चूंकि आपकी स्थिति में डेटा रिकवरी शामिल है और शॉटवेल आपको किसी भी फाइल को नहीं दिखाएगा जो आपने याद किया था जब आप प्रतीकात्मक लिंक की निर्देशिका खोलते हैं - यही इस पद्धति का बिंदु है, आखिरकार - आप संभवतः रखना चाहेंगे nocaseglob

इसे अमल में लाएं।

अपनी स्क्रिप्ट निष्पादन योग्य चिह्नित करने के लिए यह कमांड चलाएँ:

chmod +x ~/make-symlinks

इसे स्रोत पर चलाएँ और गंतव्य को तर्क के रूप में पास करें।

फिर डायरेक्टरी को डायरेक्टरी डायरेक्टरी में बदलें, यानी टॉप-लेवल फोल्डर जिसमें पिक्चर्स हों। उदाहरण के लिए, यदि वे Picturesआपके घर निर्देशिका के उपनिर्देशिका में हैं, तो आप दौड़ेंगे:

cd ~/Pictures

यह वह जगह है जहाँ आप स्क्रिप्ट चलाएंगे। कमांड-लाइन तर्क के रूप में स्क्रिप्ट के लिए गंतव्य निर्देशिका पास करें।

उदाहरण के लिए, यदि आप चाहते हैं कि cr2sआपके डेस्कटॉप पर बनाई गई एक निर्देशिका को प्रतीकात्मक लिंक से जोड़ा जाए, तो चलाएं:

~/make-symlinks ~/Desktop/cr2s

या अगर आप सीधे उस निर्देशिका को अपने होम फोल्डर में चाहते हैं:

~/make-symlinks ~/cr2s

या यदि आपके पास एक ड्राइव है, /media/you/MyDriveऔर आप उस पर एक फ़ोल्डर बनाना चाहते linksहैं, जिसमें प्रतीकात्मक लिंक शामिल हैं:

~/make-symlinks /media/you/MyDrive/links

लेकिन अगर ड्राइव /media/you/My Drive(एक स्थान के साथ) है, तो आपको उद्धरण का उपयोग करना होगा। इनमें से कोई भी कार्य (केवल एक का उपयोग करें, उन सभी को न चलाएं):

~/make-symlinks '/media/you/My Drive/links'
~/make-symlinks /media/you/'My Drive'/links
~/make-symlinks /media/you/My\ Drive/links

लेकिन अगर आप ~अपने घर निर्देशिका के लिए उपयोग करते हैं, तो वह बोली न करें:

~/make-symlinks ~/'Two Words'   # good
~/make-symlinks ~/Two\ Words    # good
~/make-symlinks '~/Two Words'   # BAD, because ~ doesn't get expanded

make-symlinksयदि यह पहले से मौजूद नहीं है, तो यह आपके लिए गंतव्य निर्देशिका बनाता है, क्योंकि यह इसके भीतर उपनिर्देशिका बनाता है। हालांकि, यह अभी भी काम करता है अगर गंतव्य पहले से मौजूद है।

आप इसे कई बार भी चला सकते हैं और उसी गंतव्य निर्देशिका को पास कर सकते हैं (उदाहरण के लिए, यदि आपने इसे Ctrl+ के साथ बाधित किया है C), हालांकि आपको failed to create symbolic linkपहले से मौजूद सिम्लिंक के लिए त्रुटियां मिलेंगी , और यह भ्रमित हो सकता है।

आप शायद उस निर्देशिका का नाम नहीं देना चाहते जो पहले से मौजूद है और जिसमें असंबंधित फ़ाइलें (जैसे आपके घर की निर्देशिका) शामिल हैं make-symlinks। यदि आप करते हैं, तो आप इसमें बनाए जाने वाले सिम्बलिंक और सबफ़ोल्डर्स के पूरे समूह की अपेक्षा कर सकते हैं। आप शायद एक नई निर्देशिका का उपयोग करना चाहते हैं - या जो अभी तक मौजूद नहीं है - के लिए make-symlinks

शॉटवेल में नए बनाए गए सिम्लिंक ट्री को आयात करें।

आपके द्वारा चलाए जाने के बाद make-symlinks, इस उत्तर के पहले भाग में दिए गए तरीकों में से किसी एक का उपयोग करके आप उस निर्देशिका को शॉटवेल में आयात करें ( "शॉटवेल में चित्र का एक फ़ोल्डर खोलना (सबफ़ोल्डर्स को शामिल करना))" । उदाहरण के लिए, आप शॉटवेल खोल सकते हैं और फ़ोल्डर को अंदर खींच सकते हैं।

चूंकि फ़ोल्डर में सभी प्रविष्टियां या तो .cr2फाइलों या निर्देशिकाओं के लिए प्रतीकात्मक लिंक हैं जो उन्हें समाहित करती हैं, कोई अन्य फ़ाइल प्रकारों के साथ, शॉटवेल को अन्य फ़ाइलों में से कोई भी नहीं देखना चाहिए।


5

शॉटवेल हर डायरेक्टरी में पाए जाने वाले सभी चित्रों के माध्यम से साइकिल करेगा जहाँ एक छवि खुली है, इसलिए find -name '*.cr2' -exec shotwell '{}' +जैसा कि मैंने सुझाव दिया है कि वास्तव में मदद नहीं करता है। चूंकि शॉटवेल की सेटिंग्स सीमित हैं, इसलिए एकमात्र तरीका मैं केवल उन फ़ाइलों को खोलने के बारे में सोच सकता हूं जो आप चाहते हैं कि फाइलों को खुद से एक नई निर्देशिका में स्थानांतरित करना है।

आप इसके लिए उपयोग कर सकते हैं find:

mkdir ~/cr2files
find -type f -iname '*.cr2' -not -path './dir/*' -exec cp -v -- '{}' ~/cr2files \;

बदलें cpके साथ mvअगर आप डुप्लिकेट फ़ाइलें बनाने से बचना चाहते हैं।

टिप्पणियाँ:

  • mkdir ~/cr2files अपने घर निर्देशिका में एक नई निर्देशिका बनाओ
  • find पेड़ के माध्यम से नीचे की ओर वर्तमान निर्देशिका से पुन: खोज
  • -type f केवल फ़ाइलों के लिए खोज
  • -iname मामले की अनदेखी करके नाम से फाइलों की खोज
  • '*.cr2'नाम के साथ समाप्त होने वाले नामों का .cr2उपयोग करने से पहले ग्लोब का विस्तार करने वाले शेल को रोकने के लिए उद्धरणों का उपयोग करेंfind
  • -not -path './dir/*'dirपरिणामों से निर्देशिका की सामग्री को बाहर करेगा
  • {} पाया फ़ाइलों के पथ का प्रतिनिधित्व करता है
  • --के बाद किसी भी अन्य विकल्पों को स्वीकार नहीं करने के cpलिए कहा cpजाता है, जो किसी भी फ़ाइल नाम से शुरू -होने वाले मुद्दों से बचता है

फिर आप नई निर्देशिका में किसी भी फ़ाइल को Shotwell के साथ खोल सकते हैं और उन सभी के माध्यम से चक्र कर सकते हैं


यह .jpg और .png फ़ाइलों को निर्देशिका में क्यों खोलता है? मुझे लगता है कि यह निर्दिष्ट करता है * .cr2? जब मैं शॉटवेल पर बाएं तीर को धकेलता हूं, तो मुझे .cr2 फ़ाइलों को देखने के लिए कैसे प्राप्त करें? अगर मैं a + के बजाय a का उपयोग करता हूं, तो कुछ नहीं होता है :(
user285884

ओह! यह एक समस्या है @ user285884 मुझे क्षमा करें, निर्देशिका में पाई जाने वाली सभी छवियों के माध्यम से शॉटवेल साइकिल ... मुझे देखने दें कि क्या मैं इसके बारे में पता लगा सकता हूं ...
Zanna

@ user285884 संपादित, लेकिन मैं एक सुंदर समाधान नहीं कर सकते हैं :(
Zanna

1
ठीक है, इस प्रयास के लिए धन्यवाद! इसके बारे में, मैं .cr2 फ़ाइलों के लिए निर्देशिका के माध्यम से खोज करता हूं और उन्हें एक अलग फ़ोल्डर कॉल cr2files में स्थानांतरित करता हूं। मैंने इसे mv * .cr2 ../cr2files/ का उपयोग करके एक सबफ़ोल्डर के भीतर किया है और यह काम कर रहा है। हालाँकि, मैं यह कैसे करूँ और यह निर्दिष्ट करूँ कि कौन सी फ़ाइलों को देखना है? "हे लिनक्स फोल्डर को .cr2 फाइलों के लिए 1-10 और cr2files फोल्डर में ले जाना" जैसा कुछ है? धन्यवाद Zanna
user285884

1
मैं कहाँ हूँ पर कुछ संदर्भ के लिए। मैंने कुछ चित्र खो दिए। इसलिए मैंने एक फोटोरेक किया और इसने मुझे फोल्डर लोड किया, जिससे मेरी पूरी हार्ड ड्राइव भर गई। इसलिए मैं एक को छोड़कर अपनी हार्ड ड्राइव में सभी फ़ोल्डरों को देखना चाहता हूं क्योंकि एक के पास एक .cr2 फाइलें हैं जो मुझे पता है कि मैं वह नहीं हूं जिसकी मुझे तलाश है। इसलिए मैं चाहता हूं कि लिनक्स को छोड़कर सभी फ़ोल्डर्स के माध्यम से जाना चाहिए। मुझे यकीन नहीं है कि आपका कोड ऐसा करता है। क्या करता है? -V के बाद "-" भी? धन्यवाद ज़न्ना!
user285884

1

विकल्प 1 - xargsफ़ाइल नामों में रिक्त स्थान होते समय का उपयोग करना

जैसा कि नीचे दिए गए टिप्पणियों में बताया गया है, back ticksफ़ाइल नाम में रिक्त स्थान होने पर (नीचे विकल्प 3) का उपयोग करके टूट जाएगा। विकल्प का उपयोग findकरने के लिए कमांड और पासिंग आउटपुट का shotwellउपयोग करने का सुरक्षित तरीका xargsइस तरह दिखता है:

find . -name "*.cr2" -print0 | xargs -0 shotwell

-print0झंडा उपयोग करने के लिए लगता है बताता है \0(शून्य चरित्र) फ़ाइल नामों के बीच परिसीमक, और -0ध्वज बताता है xargsइन की उम्मीद \0सीमांकक।

स्टैक ओवरफ्लो पर यहां पाए गए उत्कृष्ट उत्तरों का श्रेय ( फाइंड कमांड की फाइल्स की सूची कैसे पाएं)।

विकल्प 2 - -execफ़ाइल नामों में रिक्त स्थान होते समय का उपयोग करना

नीचे टिप्पणी के रूप में, -execविकल्प रिक्त स्थान वाले फ़ाइल नामों का भी समर्थन करता है। नीचे दी गई अन्य टिप्पणियां इस विराम को इंगित करती हैं जब फ़ाइलों की संख्या अधिक हो जाती है यह इस तरह दिखेगा:

find . -name "*.cr2" -exec shotwell {} +

विकल्प 3 - जब फ़ाइल नामों में स्थान न हों

पुराने दिनों में, फ़ाइल नामों से पहले रिक्त स्थान थे और 256 वर्ण लंबे हो गए, इस विकल्प ने ठीक काम किया। आपको यह विकल्प कई अन्य वेबसाइटों पर उल्लिखित मिलेगा, लेकिन आपको इस विकल्प का उपयोग नहीं करना चाहिए । दिन में वापस, findकमांड का उपयोग करना और आउटपुट पास shotwellकरना सबसे सरल तरीका था:

shotwell `find . -name "*.cr2"`

यह findवर्तमान निर्देशिका से शुरू होता है और इसमें सभी उप-निर्देशिकाएं शामिल होती हैं:

  • ऊपर दिए गए back tickएकल उद्धरणों का उपयोग न करें '। बैक-टिक्स का उपयोग $(...)बैश के भीतर वाक्यांश को घेरने के समान है ।
  • पहला तर्क एक प्रारंभिक बिंदु .देता findहै जो वर्तमान निर्देशिका है। आप के /home/$USER/Picturesबजाय या कुछ और पारित कर सकता है .
  • दूसरा तर्क -nameबताता है कि फ़ाइल नामों की खोज करें (निर्देशिका नहीं)।
  • यह तकनीक सभी कमांड के लिए काम करती है, न कि सिर्फ shotwell। यानी आप के लिए उपयोग कर सकते हैं cat, head, tailऔर अधिकांश अन्य लोकप्रिय लिनक्स आदेशों।

बैकटिक्स का उपयोग करने पर छंटनी होती है, साथ ही इसमें शब्द विभाजन के साथ समस्याएँ होती हैं। मैं आपको इसे पाइप के साथ बदलने xargs और -0सभी फ़ाइल नामों को विभाजक के रूप में NULL स्ट्रिंग का उपयोग करने की सलाह
दूंगा

इस उत्तर में दृष्टिकोण के साथ समस्या यह है कि यह गलत काम करता है जब फ़ाइल नाम वाले किसी भी फाइलनेम, या निर्देशिका के किसी भी नाम में रिक्त स्थान होते हैं। ध्यान दें, हालांकि कई लोग $( )backtick कमांड प्रतिस्थापन सिंटैक्स में कमांड प्रतिस्थापन सिंटैक्स पसंद करते हैं , जो इस समस्या के लिए प्रासंगिक नहीं है - वे दोनों बिल्कुल उसी तरह से विफल होते हैं। @ मैं इसे कैसे करना है के बारे में एक नया उत्तर पोस्ट करने का सुझाव देता हूं xargs। (प्रतिस्थापन को " "भी काम नहीं करेगा: सभी findपरिणाम एक ही तर्क के रूप में पारित किए जाएंगे।)
एलियाह कगन

मैंने इसका उत्तर लिखते समय xargsविकल्प भी देखा Stack Overflow। मैं उस विकल्प के साथ भी विस्तार करूँगा। दुर्भाग्य से मुझे भ्रष्ट NTFSविभाजन को ठीक करने के लिए आज सुबह विंडोज 8 के साथ बूट करना पड़ा, इसलिए परीक्षण समस्याग्रस्त था। हालांकि मैं उत्तर को बाद में अपडेट करूंगा। इसे इंगित करने के लिए धन्यवाद :)
WinEunuuchs2Unix

सिर्फ उपयोग क्यों नहीं -exec?
Zanna

@Zanna मैं -execविकल्प भी जोड़
दूंगा

-2

मुझे पता नहीं था कि शॉटवेल ने कच्ची फाइलें भी खोली हैं। मुझे यकीन है कि आपको डिजिकम या डार्कटेबल के साथ अधिक माइलेज मिल सकता है। Digikam कुछ Kde घटकों के साथ आता है और एक बहुत अच्छा फोटो मैनेजर है। डार्कटेबल बहुत अच्छे गैर-विनाशकारी संपादन क्षमताओं के साथ आता है।


क्या आप इस उत्तर का विस्तार कर सकते हैं ( आईजी द्वारा संपादित करें ) विस्तृत जानकारी शामिल करने के लिए कि कैसे .cr2एक फ़ोल्डर में बस फाइलों के माध्यम से ब्राउज़ करने के लिए डिजिकम (या डार्कटेबल) का उपयोग किया जाए ? यदि हां, तो फिर इस मूल्यवान हो सकता है के बाद से मूल पोस्टर मुसीबत Shotwell दिखाने के लिए हो रही किया गया है सिर्फ.cr2 फाइलों। हालाँकि, मैंने अपने जवाब में अतिरिक्त दृष्टिकोण जोड़े हैं, ताकि उन फ़ाइलों और किसी अन्य को ब्राउज़ करने के लिए शॉटवेल का उपयोग करना संभव हो सके, बल्कि मुझे पूरी तरह से संदेह है कि शॉटवेल इसके लिए सबसे अच्छा उपकरण नहीं है।
एलियाह कगन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.