मैं CLI, कमांडलाइन के माध्यम से पीपीए के लिए कैसे खोज करूं?


9

यदि apt searchमैं विफल रहता हूं, तो अगला चरण आमतौर पर एक पीपीए के लिए दिखता है, लेकिन ppasearchपरित्याग की तरह लगता है, इसलिए मैं पीपीए के लिए खोज करने के लिए क्या उपयोग कर सकता हूं (कमांडलाइन के माध्यम से)?


2
पैकेज या पीपा के लिए खोज करने के लिए लिंक जैसे कमांड लाइन ब्राउज़र का उपयोग करें
पैंथर

2
जाहिरा तौर पर एक जीयूआई विकल्प है , लेकिन अभी तक कमांड-लाइन के मोर्चे पर कुछ भी नहीं है। अच्छा सवाल है, हालांकि।
सर्गी कोलोडियाज़नी

2
क्या दिलचस्प है Y PPA प्रबंधक (परिपक्व GUI PPA एप्लिकेशन) के पास है y-ppa-cmd, लेकिन इसके लिए $ DISPLAY चर की आवश्यकता है।
N0rbert

जवाबों:


2

वास्तव में यह नहीं समझें कि आप कमांड लाइन से पीपीए की खोज क्यों करना चाहते हैं क्योंकि ज्यादातर लोगों के पास पहले से ही एक ब्राउज़र विंडो हमेशा के लिए खुली है। यहाँ कुछ विकल्प दिए गए हैं:

  • यदि आप एक ब्राउज़र का उपयोग करते हैं जो कीवर्ड को बुकमार्क में जोड़ने का समर्थन करता है, तो आप https://launchpad.net/ubuntu/+ppas?name_filter=%sकीवर्ड के साथ बुकमार्क कर सकते हैं ppa। फिर ppa [package-name]सर्च करने के लिए URL बार में टाइप करें।

  • यदि ppasearchआपको क्या चाहिए, तो इसे तब तक इस्तेमाल करते रहें, जब तक यह काम करता रहे। आप सुविधाओं को जोड़ने या बग को ठीक करने के लिए विकास में योगदान करने का प्रयास कर सकते हैं। यदि डेवलपर्स गैर-उत्तरदायी हैं, तो आप एक व्यक्तिगत कांटा बना सकते हैं।

  • आप निम्न के समान अपनी स्क्रिप्ट बना सकते हैं:

    #!/usr/bin/env bash
    
    function _show_help_ {
       echo "Usage:" `basename ${0}` "[options] [package-name]"
       echo "Open web browser to search Launchpad for [package-name]."
       echo
       echo "  -l, --list      List PPAs with link and description"
       echo "  -h, --help      Display this help and exit."
    }
    
    function msed {
       perl -0777 -pe "$@"
    }
    
    if [ $# -lt 1 ]; then
       _show_help_
       exit 1
    fi
    
    case "$1" in
       '-h'|'--help')
          _show_help_
          ;;
       '-l'|'--list')
          shift
          curl -s "https://launchpad.net/ubuntu/+ppas?name_filter=$@" \
              | pandoc -f html -t markdown \
              | msed 's@[\s\S]*<div id="ppa_list">@@' \
              | msed 's@\]\(@\]\(https://launchpad.net/@'
              | grep -E '^\s+\[' \
              | msed 's@^\s+@@' \
              | msed 's@\s+[0-9]+\s+[0-9]+\s+@\n@g'
          ;;
       *)
          xdg-open "https://launchpad.net/ubuntu/+ppas?name_filter=$@"
          ;;
    esac

    यह स्क्रिप्ट डिफ़ॉल्ट ब्राउज़र में दिए गए पैकेज के लिए लॉन्चपैड खोज के लिए एक लिंक खोलता है। उपयुक्त ध्वज के साथ -l, यह उनके URL और विवरणों के साथ PPA नामों की एक सूची तैयार करता है।

    आप अतिरिक्त सुविधाओं को जोड़ सकते हैं क्योंकि आप उनकी आवश्यकता का सामना कर सकते हैं।


1
पूरे बिंदु यह है कि ओपी एक उपकरण के समान होना चाहता है apt-cache search package_name। इसके साथ समस्या apt-cacheरिपॉजिटरी के पैकेज मेटाडेटा को खोजने पर निर्भर करती है जो पहले ही सिस्टम में जोड़ा जा चुका है। उस ने कहा, आप बहुत दूर नहीं हैं - उस लिंक का उपयोग PPA को सूचीबद्ध करने के लिए किया जा सकता है, इसलिए एक अनुरोध करने और प्रतिक्रिया को पार्स करने के लिए काफी सरल होना चाहिए, लेकिन शायद पार्सिंग भाग में PITA का पूरा हिस्सा
Sergiy Kolodyaznyy

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

हेडलेस सर्वर तक पहुँचने के लिए आपके द्वारा उपयोग किए जाने वाले डिवाइस में ब्राउज़र नहीं हैं? यह सभी तरह से नीचे सिरहीन सर्वर है?
xiota

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