Ubuntu पर .URL फ़ाइल के बराबर


25

URL लिंक को विंडोज के माध्यम से * .url फ़ाइल में सहेजा गया है और जब आप इस फ़ाइल को खोलते हैं। यदि आप नए बनाए गए इंटरनेट शॉर्टकट, साधारण URL फ़ाइल पर डबल क्लिक करते हैं, तो यह आपके डिफ़ॉल्ट ब्राउज़र को संकेतित URL पर खोल देगा। उदाहरण के लिए च URL फ़ाइल cntent:

[InternetShortcut]
URL=http:abdennour-insat.blogspot.com

जब उबंटू OS पर एक ही फाइल (.url) कॉपी की जाती है, तो उबंटू इसे एक टेक्स्ट फाइल की तरह हैंडल करता है। इसलिए, फ़ाइल पर डबल क्लिक करने पर ब्राउज़र ओपन नहीं होता है

मेरा प्रश्न है: URL में शॉर्टकट फ़ाइल बनाने के लिए लिनक्स में .url फ़ाइल के बराबर क्या है?

जवाबों:


18

उबंटू में एक URL शॉर्टकट .desktop फ़ाइल में निम्नानुसार संग्रहीत किया जाता है (उदाहरण के लिए):

[Desktop Entry]
Encoding=UTF-8
Name=Link to Best Practices Software engineering
Type=Link
URL=http://abdennour-insat.blogspot.com/
Icon=text-html

यदि आप अभी भी उबंटू में अपनी विंडोज यूआरएल फाइलें खोलना चाहते हैं, तो यहां बताया गया है कि आप इसे कैसे कर सकते हैं:

उस लेख में दी गई पर्ल स्क्रिप्ट टूटी हुई प्रतीत होती है, लेकिन निम्नलिखित कोड को एक ही काम सही तरीके से करना चाहिए:

#!/usr/bin/perl
# Script to make Microsoft Windows Internet Shortcuts (*.url) work on Linux.

my $browser = 'sensible-browser';  # use the system default browser

while (<>) {
    # match any line of the form "URL = something-without-spaces"
    if (/^\s*URL\s*=\s*(\S+)\s*$/) {
        exec $browser, $1;         # successful exec never returns
        die "$0: could not launch $browser: $!\n";
    }
}

3
पर्ल लिपि कई मायनों में टूटी हुई दिखती है: "फ़िल्टर आउट कैरिज रिटर्न" रेगेक्सपी काम नहीं करेगा क्योंकि यह बैकस्लैश याद कर रहा है, और वास्तव में, ifक्लॉज़ में पहले का रेगेक्सप तब तक मेल नहीं खाएगा जब तक कि URL में नंबर न हो 1, उसी कारण से । इसके अलावा, अगर यह किसी तरह से मेल खाता है, तो URL को शेल के पास अनसोल्ड कर दिया जाएगा, जो न केवल एक सुरक्षा दोष है, बल्कि किसी भी URL को तोड़ देगा, जैसे कि अलग किए गए पैरामीटर &। मैंने इन मुद्दों को हल करते हुए आपके उत्तर में एक संपादन सुझाव प्रस्तुत किया है।
इल्मरी करोनें

14

एकता में हमारे पास लॉन्चर, डेस्कटॉप या अन्य स्थानों पर आइटम को परिभाषित करने के लिए .desktop फाइलें हैं। इन्हें बनाने के लिए निम्नलिखित प्रश्न देखें:

इंटरनेट फ़ाइल के लिंक में निम्न के रूप में एक प्रविष्टि हो सकती है

[Desktop Entry]
Encoding=UTF-8
Name=Internet Link
Type=Link
URL=<url>
Icon=<icon to display>

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

हालाँकि यह ध्यान रखें कि ऐसी सरल .desktop फ़ाइल किसी ब्राउज़र में दिए गए URL को स्वतः नहीं खोलेगी यदि लक्ष्य उदाहरण के लिए एक टेक्स्ट डॉक्यूमेंट या इमेज है। इसे दूर करने के लिए निम्नलिखित प्रश्न देखें:

यदि हमें अधिक बार .URL फाइलें खोलने की आवश्यकता होती है (उदाहरण के लिए एक साझा ड्राइव से) तो हम उन्हें खोलने के लिए इसके समान एक बैश स्क्रिप्ट भी चला सकते हैं:

#! /bin/bash

# opens Windows URL file submitted as command line argument in browser

source $1
xdg-open $URL

command not foundइस स्क्रिप्ट की त्रुटि को अनदेखा किया जा सकता है या उसे भेजा जा सकता है /dev/null। अगर हमें करना चाहिए, तो हम इस स्क्रिप्ट को एक्सटेंशन URL के लिए एक URL फ़ाइल खोलने के लिए डबल क्लिक करने के लिए माइम प्रकार से जोड़ सकते हैं।


अन्य उत्तर की तुलना में एक आश्चर्यजनक सरल स्क्रिप्ट। एक .desktopफ़ाइल में रखें और इसके .urlसाथ फ़ाइलों को संबद्ध करें तो आप कर रहे हैं।
किरी

सरल, लेकिन एक हमला वेक्टर। जैसा कि हम पहले तर्क (यूआरएल फ़ाइल) को निष्पादित / चला रहे हैं।
ctrl-alt-delor-

3

यदि आप .URL फाइलें रखना चाहते हैं (यह विंडोज और * निक्स मशीनों के बीच फाइलों को साझा करने वाले लोगों के लिए आम है) तो एक स्क्रिप्ट फाइल बनाएं चलो इसे जीतें-urlfile.sh (या जो आपको कभी पसंद हो) / usr / लोकल / में बिन (या आपके पसंदीदा फ़ोल्डर)। परिवर्तन की अनुमति: chmod + x win-urlfile.sh

#!/usr/bin/bash
sed 's/^BASEURL=/URL=/' "$1" | grep -m 1 '^URL=' | sed 's/^URL=//' | sed 's/\r//' | xargs xdg-open

यह सभी * निक्स और गोले में काम करता है जिससे आप अपनी .URL फ़ाइलों को फ़ाइल प्रबंधक से खोल सकते हैं। आपको .URL फ़ाइल प्रकार को खोलते समय win-urlfile.sh को कॉल करने के लिए एकता को कॉन्फ़िगर करने की आवश्यकता होगी। जब आप एक .URL फ़ाइल प्रकार खोलते हैं, तो अपने फ़ाइल प्रबंधक को स्क्रिप्ट में एक एकल फ़ाइल नाम तर्क पास करना सुनिश्चित करें। जब आप पहली बार सेटअप करते हैं तो test.url जैसे सरल नाम के साथ टेस्ट करें।

यद्यपि "स्रोत" (bash विशिष्ट) समाधान निष्पादन के लिए .desktop फ़ाइलों को स्क्रिप्ट कोड के रूप में कार्य करता है, जिससे अप्रत्याशित कोड निष्पादन हो सकता है। व्यक्तिगत रूप से मैं उस खराब कोडिंग पर विचार करता हूं।

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