আমি পড়েছি যে ভালো জিনিস লিখতে খারাপ for line in $(command)
, এর পরিবর্তে সঠিক উপায় বলে মনে হচ্ছে:
command | while IFS= read -r line; do echo $line; done
এটি দুর্দান্ত কাজ করে। তবে আমি যদি পুনরুক্তি করতে চাই তবে কোনও ভেরিয়েবলের বিষয়বস্তু , কোনও কমান্ডের প্রত্যক্ষ ফলাফল নয়?
উদাহরণস্বরূপ, কল্পনা করুন যে আপনি নিম্নলিখিত ফাইলটি তৈরি করেছেন quickfox
:
The quick brown
foxjumps\ over -
the
lazy ,
dog.
আমি এই জাতীয় কিছু করতে সক্ষম হতে চাই:
# This is just for the example,
# I could of course stream the contents to `read`
variable=$(cat quickfox);
while IFS= read -r line < $variable; do echo $line; done; # this is incorrect