मैं Nautilus के साथ दो फ़ाइलों को "अलग" कैसे कर सकता हूं?


16

मैंने मेल्ड को स्थापित किया है और पाया है कि यह एक महान तुलना उपकरण है। दुर्भाग्य से Nautilus 3.2 के साथ कोई एकीकरण नहीं है। इसका मतलब है, मैं फ़ाइलों पर राइट क्लिक नहीं कर सकता और उन्हें तुलना के लिए मेल्ड में खोलने का विकल्प चुन सकता हूं।

मैंने उपकरण में टिप्पणी की है कि उपकरण को स्थापित करने के लिए अंतर-अतिरिक्त पैकेज की आवश्यकता है। इस पैकेज को उबंटू ब्रह्मांड से हटा दिया गया है, मैं अनुमान लगा रहा हूं क्योंकि gtk 3.0। यहां तक ​​कि अगर मैं मैन्युअल रूप से स्रोत से अलग -थलग पैकेज को डाउनलोड करता हूं , तो जब मैं इसे कॉन्फ़िगर करने का प्रयास करता हूं तो चेक संदेश के साथ विफल हो जाता है:

checking for DIFF_EXT... configure: error: Package requirements (libnautilus-extension >= 2.14.0 gconf-2.0 >= 2.14.0 gnome-vfs-module-2.0 >= 2.14) were not met:

No package 'libnautilus-extension' found
No package 'gconf-2.0' found
No package 'gnome-vfs-module-2.0' found

ठीक है, इसलिए इस आउटपुट से मैं इकट्ठा करता हूं कि वास्तव में gtk 2 को नॉटिलस के लिए अलग विस्तार स्थापित करने के लिए आवश्यक है।

अब, मेरा सवाल है: क्या नौटिलस में मेल्ड को एकीकृत करने की संभावना है? या, क्या कोई अन्य भिन्न आधारित उपकरण हैं जो वर्तमान Nautilus के साथ एकीकृत हैं? तो gtk3 आधारित।

मैं Ubuntu 11.10 का उपयोग कर रहा हूँ अगर अभी तक कोई संदेह था।

जवाबों:


20

एक उपयोगी अजगर विस्तार है जो मेल्ट को नौटिलस में शामिल करता है

यहाँ छवि विवरण दर्ज करें

यहाँ छवि विवरण दर्ज करें

स्थापित कैसे करें

लेखकों की वेबसाइट से स्रोत या डिबेट पैकेज प्राप्त करें

wget http://www.giuspen.com/software/nautilus-pyextensions_3.4.1-1_all.deb

sudo apt-get install python-nautilus
sudo dpkg -i nautilus-pyextensions_3.4.1-1_all.deb

डैश में pyextension के लिए खोजें और Nautilus PyExtension चलाएं

मेल्ड एक्सटेंशन को सक्रिय करें (यदि पूछा गया है तो इसे इंस्टॉल करें) और Nautilus टूलबार विकल्प को पुनरारंभ करें पर क्लिक करें।

GConf त्रुटि

अगर आप Nautilus PyExtension को खोलने की कोशिश में GConf संबंधित त्रुटि पाते हैं, तो "gobject-introspection" और "gir1.2-gconf-2.0" स्थापित करें:

sudo apt-get install gobject-introspection
sudo apt-get install gir1.2-gconf-2.0

धन्यवाद, यह काम महान। इसके अलावा, स्क्रीन शॉट्स बनाने के लिए समय निकालने और त्वरित इंस्टॉल विवरण बनाने के लिए धन्यवाद। आपसे जवाब पाने के लिए हमेशा अच्छा।
बायोशेर्क

meldसुपर-डुपर कमाल है। महान एकीकरण टिप।
बेलाक्वा

11

आप मानक उबंटू पैकेज रिपॉजिटरी से उपलब्ध नॉटिलस-तुलना पैकेज, उबंटू (12.04 के साथ शुरू) भी स्थापित कर सकते हैं - निम्नलिखित को एक टर्मिनल से चलाएं:

sudo apt-get install nautilus-compare

यह 2-वे और 3-वे तुलना के लिए नॉटिलस मेनू विकल्प प्रदान करता है। Meld का उपयोग डिफ़ॉल्ट रूप से किया जाता है, लेकिन किसी भी उपयोगकर्ता द्वारा परिभाषित अलग अनुप्रयोग का उपयोग किया जा सकता है।

इस समाधान का एक महत्वपूर्ण लाभ यह है कि एक फाइल या अलग निर्देशिका में स्थित फ़ोल्डरों तुलना कर सकते हैं (उदाहरण के लिए है /home/user/a/b/c/file.txtऔर /home/user/d/e/f/otherfile.txtविभिन्न नॉटिलस खिड़कियों में खोला जा सकता है, और की तुलना में एक दूसरे के खिलाफ)।


3

नौटिलस लिपि

एक समर्पित एक्सटेंशन स्थापित करने का एक आसान और अधिक कुशल विकल्प निम्नलिखित की तरह Nautilus स्क्रिप्ट का उपयोग करना होगा:

#!/bin/bash
meld "$@"

स्थापना निर्देश: मैं Nautilus स्क्रिप्ट कैसे स्थापित कर सकता हूं?


यह आसानी से सबसे अच्छा उपाय है। यह अभी तक अन्य pkgs और संबंधित ओवरहेड की स्थापना से बचा जाता है। धन्यवाद, @Glutanimate।
u2n

2

फाइल से क्लिपबोर्ड पर पाठ की तुलना करने के लिए Nautilus का उपयोग करना

यह उत्तर मुख्य रूप से क्लिपबोर्ड में पाठ से किसी फ़ाइल की तुलना करने के लिए उपयोग किया जाता है जिसे इंटरनेट से कॉपी किया गया था। क्लिपबोर्ड पाठ को आपके सिस्टम पर किसी अन्य फ़ाइल से कॉपी किया जा सकता है - हालांकि यह एक योग्य उत्तर बनाता है।

फ़ाइल मतभेदों को बैश की मूल diffकमांड का उपयोग करके हाइलाइट किया जाता है और फिर उपयोग करके प्रदर्शित किया जाता है gedit। हालांकि इसे meldया किसी अन्य तीसरे पक्ष के पैकेज में संशोधित किया जा सकता है ।

यह उत्तर किसी फ़ाइल का चयन करने के बाद कस्टम स्क्रिप्ट चलाने के लिए Nautilus के अंतर्निहित फ़ंक्शन का उपयोग करता है:

#!/bin/bash

# NAME: clipboard-diff
# PATH: $HOME/.local/share/nautilus/scripts
# DESC: Find differences bewteen selected file on disk and clipboard.
# CALL: Called from Nautilus file manager.
# DATE: March 18, 2017. Modified: March 31, 2017.

# NOTE: The clipboard would contain text highlighted on website and copied
#       with <ctrl>+<C>. Requires command `xclip` to be installed.

# Must have the xclip package. On Ubuntu 16.04, not installed by default
command -v xclip >/dev/null 2>&1 || { zenity --error --text "Install xclip using: 'sudo apt install xclip' to use this script.  Aborting."; exit 99; }

# strip new line char passed by Nautilus
FILENAME=$(echo $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS | sed -e 's/\r//g')

# Multiple files can't be selected.
LINE_COUNT=$(wc -l <<< "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS")
LINE_COUNT=$((LINE_COUNT-1))

if [[ $LINE_COUNT > 1 ]] ; then
    zenity --error --text "Ony one file can be selected at a time! "
    exit 1
fi

# Object type must be "file..." (ie no directories, etc.)
if [ -d "${FILENAME}" ] ; then
    zenity --error --text "$FILENAME is a directory!";
    exit 1
else
    if [ -f "${FILENAME}" ]; then
        : # Bash noop
    else
        zenity --error --text "${FILENAME} is not a file!";
        exit 2
    fi
fi

# Get clipboard contents into working file
workfile="/tmp/clipboard-work-"$(date +%s)
xclip -o > $workfile

# Create temporary file name so two or more open instances won't clash
differences="/tmp/clipboard-diff-"$(date +%s)

# Compare file differences
# -q brief -B ignore blank lines, -u only differences
diff --unified=2 -w -b -B -I --suppress-blank-empty \
        --suppress-common-lines --ignore-all-space \
        ${FILENAME} $workfile > $differences

# If file doesn't exist, errors in diff parameters
# If file size =0 there were no differences
if [[ -f $differences ]] ; then
    if [[ -s $differences ]] ; then
        # File not empty.
        gedit $differences
    else    
        zenity --info --text "$workfile matches $differences"
    fi
else
    zenity --error --text "cliboard-diff - error in diff parameters."
fi

# clean up /tmp directory
rm $workfile
rm $differences

exit 0

ध्यान दें: मैंने इस Nautilus स्क्रिप्ट को कुछ हफ़्ते पहले विकसित किया था और इसे एक नए Q & A के रूप में पोस्ट करने के लिए अर्थ दिया गया है, लेकिन समय के लिए दबाया गया है और अनिश्चित था कि अगर कोई भी वास्तव में इसमें रुचि रखता है।

नमूना उत्पादन

क्लिपबोर्ड- diff १

इस उदाहरण में हम 31 मार्च, 2017 से पहले 31 मार्च, 2017 तक एयू में यहां पोस्ट की गई वास्तविक स्क्रिप्ट की तुलना कर रहे हैं। ध्यान दें कि नई जानकारी और त्रुटि संदेश सेटअप कैसे थे।

diffआदेश बहुत शक्तिशाली है और इस तरह के रूप नियंत्रण पैरामीटर्स के असंख्य है। man diffमैन्युअल पृष्ठों के लिए या info diffअधिक कमांड उपयोग विवरण के लिए टर्मिनल में टाइप करें।

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