বিড়াল কমান্ডের সাথে একটি ভেরিয়েবলের স্পেস রয়েছে


1

catকোনও ফাইলের বিষয়বস্তু প্রদর্শন করতে আমার কমান্ডটি ব্যবহার করতে হবে এবং ফাইলটির মধ্যে ফাঁকা স্থান রয়েছে: "এম্বেডড বোর্ড লিংক.আরটিএফ"।

আমি ভেরিয়েবলটি ব্যবহার করে ফাইলের নাম নির্ধারণ করি: I="embedded board link.rtf"তবে আমি যখন ব্যবহার করি তখন আমার cat $Iএই ত্রুটি বার্তাটি থাকে।

wireless-10-146-35-118 Desktop> cat $I
cat: embedded: No such file or directory
cat: board: No such file or directory
cat: link.rtf: No such file or directory

কী ভুল হতে পারে?

উত্তর:


6

আপনাকে ভেরিয়েবলটিও উদ্ধৃত করতে হবে:

I="embedded board link.rtf"
cat "$I"

কারণ শেলটি প্রথমে কোনও ভেরিয়েবল প্রসারিত করবে এবং তারপরে কমান্ডটি বিশ্লেষণ করবে:

  1. cat $1
  2. cat embedded board link.rtf

আপনি যখন সত্যই নিম্নলিখিতটি বোঝাতে চেয়েছিলেন:

  1. cat "$1"
  2. cat "embedded board link.rtf"

মনে রাখবেন যে bashএবং অন্যান্য অনেক শেল, একক উদ্ধৃতিতে ভেরিয়েবলগুলি প্রসারিত হবে না:

  1. cat '$1'
  2. cat '$1'
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.