উন্মুক্ত টার্মিনালের আকারটি সন্ধান করুন


13

ডিઇ-তে আমরা আমাদের সুবিধার জন্য টার্মিনালটির (আকারের জিনোম-টার্মিনাল) আকার পরিবর্তন করতে পারি, আমি কীভাবে পিক্সেল বা কলাম এবং সারিগুলির সংখ্যার ভিত্তিতে টার্মিনালের আকার জানতে পারি?

উত্তর:


20

কমান্ড জারি করলে

stty size

এটি সারি এবং কলামগুলিতে বর্তমান টার্মিনালের আকার প্রদান করে। উদাহরণ:

$ stty size
24 80

আপনি সারি এবং কলামগুলি ভেরিয়েবলগুলিতে এর মতো পড়তে পারেন ( জানিসের মন্তব্যে ধন্যবাদ ):

$ read myrows mycols < <(stty size)

পিক্সেলের আকার অর্জন করতে আপনার স্ক্রিনের রেজোলিউশন সম্পর্কে জ্ঞান প্রয়োজন এবং আমি মনে করি না যে sttyএই জাতীয় তথ্যে সরাসরি অ্যাক্সেস রয়েছে।


স্যার পিক্সেলের ক্ষেত্রে আউটপুট পাওয়া সম্ভব নয় কি?
এডওয়ার্ড টরভাল্ডস

মনে রাখবেন যে, মধ্যে এই উত্তরে কমান্ড ভেরিয়েবল দেখতে পাবেন না, যেহেতু পাইপলাইন একটি subshell মধ্যে মৃত্যুদন্ড কার্যকর করা হবে না। (এটি এতে কাজ করে )) যদিও আপনি ব্যবহার করতে পারেন, যেমন ,। bashechoreadkshbashread myrows mycols < <( stty size )
জানিস

1

একটি ডেস্কটপ পরিবেশে আপনি এক্স ব্যবহার করছেন এবং xwininfoইউটিলিটি উইন্ডোটির আকার পিক্সেলগুলিতে প্রদর্শন করতে পারে। এছাড়াও, আপনি যদি ডেস্কটপে চলছেন (এবং উদাহরণস্বরূপ, দূরবর্তীভাবে সংযুক্ত) না, টার্মিনাল এমুলেটর একটি পরিবর্তনশীল সরবরাহ করে $WINDOWIDযা আপনি প্যারামিটার হিসাবে ব্যবহার করতে পারেন xwininfo, যেমন,

xwininfo -id $WINDOWID

এবং এটি একটি তালিকা তালিকা পান:

xwininfo: Window id: 0xc00025 "uxterm"

  Absolute upper-left X:  65
  Absolute upper-left Y:  167
  Relative upper-left X:  0
  Relative upper-left Y:  22
  Width: 624
  Height: 577
  Depth: 24
  Visual: 0x22
  Visual Class: TrueColor
  Border width: 1
  Class: InputOutput
  Colormap: 0x21 (installed)
  Bit Gravity State: NorthWestGravity
  Window Gravity State: NorthWestGravity
  Backing Store State: NotUseful
  Save Under State: no
  Map State: IsViewable
  Override Redirect State: no
  Corners:  +65+167  -589+167  -589-256  +65-256
  -geometry 103x42+65+145

এই উদাহরণস্বরূপ, লাইনগুলি পিক্সেলের সাথে আকার Widthএবং Heightহয় । সর্বশেষ লাইনটি অক্ষরের আকার দেয় (পাশাপাশি উপরের-বাম কোণার অবস্থান - পিক্সেলগুলিতে)।-geometry

উইন্ডোটির আকার পরিবর্তন করার কথা বললে resizeপ্রোগ্রামটি লাইন এবং কলামের সংখ্যা দেখায়। এই উদাহরণস্বরূপ, এটি দেখায়

$ resize
set noglob;
setenv COLUMNS '103';
setenv LINES '42';
unset noglob;

প্রশ্নটি কীভাবে তথ্য ব্যবহার করা হতে পারে তা নির্দেশ করে না, তবে যেহেতু আউটপুটটি অনুমানযোগ্য বিন্যাসে পাঠ্য, তাই এটি সহজেই স্ক্রিপ্ট হয়। অ্যাজক ব্যবহার করে এখানে একটি সাধারণ উদাহরণ দেওয়া হয়েছে:

#!/bin/sh
if [ -n "$WINDOWID" ]
then
    xwininfo -id $WINDOWID | awk '
    BEGIN { px = 0; py = 0; chars = "?x?"; }
    /Height:/ { py = $2; }
    /Width:/ { px = $2; }
    /-geometry/ { chars = $2; sub("+.*","",chars); }
    END { printf "%dx%d pixels, %s chars\n", py, px, chars; }'
else
    printf '? no WINDOWID found\n'
fi

যা প্রিন্ট করে

577x624 pixels, 103x42 chars
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.