उस विस्तारित विशेषता वाली सभी .webarchive फ़ाइलों से xattr com.apple.quarantine कैसे निकालें?


13

कई फाइल सिस्टम में फैले हुए मेरे पास कई .webarchive फाइलें हैं जिन्हें OmniWeb द्वारा सहेजा गया था। उदाहरण के लिए:

sh-3.2$ ls -@ 2012-03-19.webarchive 
2012-03-19.webarchive
sh-3.2$ ls -@l 2012-03-19.webarchive 
-rw-r--r--@ 1 gjp22  staff  3722852 19 Mar  2012 2012-03-19.webarchive
    com.apple.quarantine         26 
sh-3.2$ xattr -l 2012-03-19.webarchive 
com.apple.quarantine: 0000;4f66fcc8;OmniWeb.app;

उन फ़ाइलों को एक अज्ञात डेवलपर के रूप में माना जाता है। मैं एक-एक को कंट्रोल-क्लिक से खोल सकता हूं लेकिन यह थकाऊ है।

इसलिए मैं ऐसी सभी विस्तारित विशेषताओं को हटाने के लिए एक कमांड, शायद खोज (1) को शामिल करना चाहता हूं ।

जवाबों:


21
find . -iname '*.webarchive' -print0 | xargs -0 xattr -d com.apple.quarantine
  • हटा देगा ( xattr -d ) com.apple.quarantine विस्तारित विशेषता
  • .webarchive ( -iname '* .webarchive' ) के विस्तार वाली सभी फ़ाइलों से
  • वर्तमान निर्देशिका और इसके उपनिर्देशिकाओं में स्थित है ( -depth , जहाँ -depth निहित है)
  • xargs ( -print0 | xargs -0 ) के माध्यम से जा रहा है, जिसमें रिक्त स्थान और अन्य विशेष वर्णों वाले फ़ाइल नाम के साथ समस्याओं से बचने के लिए (एक परिचित लक्ष्य का उपयोग करके थोड़ी कम दक्षता के साथ पूरा किया जा सकता है find . -iname '*.webarchive' -exec xattr -d '{}' \;)।

दक्षता अंतर की व्याख्या:

जब भी सिंटैक्स इसके लिए अनुमति देता है जैसे कि इस मामले में, xargs एक या एक से अधिक कमांड लाइन जैसे असेंबल करता है xattr -d com.apple.quarantine /path/to/file1.webarchive /path/to/fileN.webarchive

याद रखने के लिए आसान-इन- findमाय -ओपिनियन संस्करण हर बार कमांड को दोहराता है:xattr -d com.apple.quarantine /path/to/file1.webarchive ; xattr -d com.apple.quarantine /path/to/fileN.webarchive


1
findयदि आप \+इसके बजाय इसे समाप्त करते हैं तो एक ही कुशल फ़ाइलपथ-असेंबलिंग करेंगे \;
स्लिप डी। थॉम्पसन

0

इसे पूरा करने का एक और अधिक स्वचालित तरीका है:

ओपन ऑटोमेटर - "सेवा" चुनें

इसे पेस्ट करें

on run {input, parameters}
    tell application "Terminal"
        activate
        set filesString to ""
        repeat with file_ in input
            set filesString to filesString & " " & quoted form of (POSIX path of file_)
        end repeat
        do script "xattr -r -d com.apple.quarantine" & filesString
    end tell
    return input
end run

सुनिश्चित करें कि "सेवा प्राप्त चयनित" के लिए "फाइलें या फ़ोल्डर" चुना गया है। सुनिश्चित करें कि "खोजकर्ता" "में" के लिए चुना गया है

फिर हिट सहेजें और इसे अनक्वेर्नेटाइन नाम दें, उस फ़ोल्डर या फ़ाइल पर जाएं जिसे आप संगरोध से हटाना चाहते हैं और राइट क्लिक करें और अनकार्टाइन का चयन करें

https://forums.macrumors.com/threads/%E2%80%9Cverifying%E2%80%9D-upon-opening-every-file.2065395/page-2#post-25134721

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