এখানে <<-HERE
টার্মিনেটর সহ নথিগুলি ইনডেন্টড মাল্টি-লাইন পাঠ্য স্ট্রিংয়ের জন্য ভাল কাজ করে। এটি এখানে নথি থেকে যে কোনও শীর্ষস্থানীয় ট্যাব সরিয়ে ফেলবে। (যদিও লাইন টার্মিনেটরগুলি এখনও থাকবে))
cat <<-____HERE
continuation
lines
____HERE
Http://ss64.com/bash/syntax-here.html এও দেখুন
আপনার যদি কিছু সংরক্ষণ করতে হয় তবে সমস্ত নয়, শীর্ষস্থানীয় হোয়াইটস্পেস, আপনার মতো কিছু ব্যবহার করা যেতে পারে
sed 's/^ //' <<____HERE
This has four leading spaces.
Two of them will be removed by sed.
____HERE
অথবা tr
নিউলাইনগুলি থেকে মুক্তি পেতে ব্যবহার করুন :
tr -d '\012' <<-____
continuation
lines
____
(দ্বিতীয় লাইনে একটি ট্যাব এবং সামনে একটি স্পেস উপরে রয়েছে; হ্যাডোডোক টার্মিনেটরের আগে ট্যাব ড্যাশ অপারেটর দ্বারা সরানো হবে, যেখানে স্থানটি সংরক্ষণ করা হবে))
অনেকগুলি লাইনে দীর্ঘ জটিল স্ট্রিং মোড়ানোর জন্য, আমি পছন্দ করি printf
:
printf '%s' \
"This will all be printed on a " \
"single line (because the format string " \
"doesn't specify any newline)"
এটি প্রাসঙ্গিক ক্ষেত্রেও ভাল কাজ করে যেখানে আপনি অন্য ভাষায় শেল স্ক্রিপ্টের অযৌক্তিক টুকরো এম্বেড করতে চান যেখানে হোস্ট ভাষার সিনট্যাক্স আপনাকে এখানে কোনও নথি ব্যবহার করতে দেয় না, যেমন একটি Makefile
বা Dockerfile
।
printf '%s\n' >./myscript \
'#!/bin/sh` \
"echo \"G'day, World\"" \
'date +%F\ %T' && \
chmod a+x ./myscript && \
./myscript