2009-11-07 10 views
26

क्या बाहरी आदेश चलाने और रजिस्टर में अपना आउटपुट स्टोर करना संभव है? पूर्व आदेश, बाहरी आदेश (afaik) वीआईएम: बाहरी कमांड का स्टोर आउटपुट

  • :r ! के लिए नहीं करने के लिए

    • :redir काम करता है बाह्य आदेश चलता है, लेकिन सीधे वर्तमान बफर
  • उत्तर

    35

    मिले में उत्पादन सम्मिलित करता है पर एक उपयोगकर्ता का जवाब धन्यवाद vim उपयोग मेलिंग सूची:

    :let @a = system("ls -l")

    तर्क के रूप में कर्सर के तहत फ़ाइल के साथ एक कमांड चलाने के लिए:

    :let @a = system("ls -l " . shellescape(expand('<cfile>')))

    +2

    यह शेल आदेशों के निर्माण 'shellescape()' समारोह का उपयोग करने के बुद्धिमान है। इस उदाहरण में, 'चलो @ ए = सिस्टम ("एलएस-एल"। शेल्सस्केप (विस्तार (' ')))। – jamessan

    +1

    अच्छा बिंदु, उत्तर अद्यतन –