सेड / अवाक लाइन डबल


0

मेरे पास इस तरह की एक सूची है।

  • Bob
  • Jim
  • Steve

क्या इस तरह से एक सूची में बदलने के लिए बैश में एक रास्ता है?

  • <a href="http://example.com/Bob"> Bob
  • <a href="http://example.com/Jim"> Jim
  • <a href="http://example.com/Steve"> Steve

सूची कहां से आ रही है? यह शायद आपको कुछ विचार शुरू करने और देने का सबसे अच्छा तरीका है। यदि यह बैश सरणी है, तो awk या sed का उपयोग संभवतः अनावश्यक है। अगर यह सिर्फ एक सरणी (यानी list=("Bob", "Jim", "Steve")) है तो आप कर सकते हैं for i in "${list[@]}"; do echo <a href="http://example.com/${i}">${i}</a>; done
21

यह सिर्फ एक पाठ फ़ाइल है।
13throwaway

प्रत्येक अपनी लाइन पर?
nerdwaller

हां, प्रत्येक की अपनी लाइन है।
13throwaway

जवाबों:


1

यह ठीक काम करना चाहिए:

#/usr/bin/env bash

while read n; do
    echo "<a href=\"http://example.com/${n}\">${n}</a>"
done < ${1}

यदि आपने वह स्क्रिप्ट बनाई है, तो आप इसे कॉल करेंगे ./scriptname.sh filename.txtऔर यह केवल कंसोल पर प्रिंट करेगा। (नोट: मैंने आपके प्रश्न को भी शामिल करने के लिए एक्सट्रपलेशन किया है </a>।)

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