ক্রন্টব সর্বাধিক কমান্ডের দৈর্ঘ্য


20

কোনও ক্রন্টব-এ কোনও কমান্ড অক্ষরের সীমাবদ্ধতা রয়েছে কি?

আমার 178 টি অক্ষর কমান্ড সহ একটি ক্রোন্টাব রয়েছে এবং মৃত্যুদন্ড কার্যকর করার সময় এটি 164 এ কেটে ফেলা হবে বলে মনে হয়। আমি যে নম্বরটি পেয়েছি তা থেকে এবং এই বিন্দু থেকে পরিবর্তিত ভিআই রঙগুলি থেকে আমি এই নম্বরটি বলতে পারি।

সুতরাং, এটি কি "অফিসিয়াল" সীমাবদ্ধতা? আমি এই সম্পর্কে কোন দলিল খুঁজে পাচ্ছি না।


হুম, এটির দৈর্ঘ্য সীমা না থাকলে আমি সন্দেহ করি এটি আপনি যতটা দেখছেন তত কম হবে। সার্ভারফল্ট / প্রশ্নস / 44৪৯6565৫ / দিয়ে আপনার পথে কাজ করার পক্ষে এটি আপনার পক্ষে মূল্যবান এবং যদি এটি আপনার প্রকৃত (যথাযথভাবে redacted) ক্রন্টব প্রবেশের সাথে আপনার প্রশ্নটি আপডেট করতে সহায়তা করে না।
ব্যবহারকারী 9517

আপনি ঠিক বলেছেন, দৈর্ঘ্য সমস্যা ছিল না। আমার উত্তর দেখুন। লিঙ্কের জন্য ধন্যবাদ।
পনিটেক

উত্তর:


36

বাহ, আমার সমস্যাটি কী তা আমি খুঁজে পেয়েছি এবং লাইনের দৈর্ঘ্যের সাথে এর কোনও যোগসূত্র নেই।

দেখা যাচ্ছে যে আমার কমান্ডটিতে একটি% (শতাংশ সাইন) ছিল, যা ক্রোন্টাবের একটি বিশেষ অর্থ রয়েছে। এটি STDIN এ পাঠ্য ইনপুট করতে ব্যবহৃত হয় (দেখুন কেন আমার ক্রন্টব কাজ করছে না, এবং আমি কীভাবে এটির সমস্যা সমাধান করব? )।

সুতরাং আমি এড়াতে হয়েছিল। আমার আদেশ যা ছিল:

gzip -c /path/to/a/file > /backup/dir/file-$(date +%F_%T).gz

হয়ে

gzip -c /path/to/a/file > /backup/dir/file-$(date +\%F_\%T).gz

তারিখ '+% F_% T' পর্যাপ্ত হবে না?
jirib

আমি অনুমান করছি যে তিনি যে নিউলাইন চরিত্রটি তারিখটির ফলাফলের শেষে রেখেছিল তা মুছে ফেলার জন্য তিনি প্রতিধ্বনি করছেন
এড।

2
আমি ভাবছিলাম যে কেন ভিএম এবং সিনট্যাক্স হাইলাইট করে ক্রন্টব সম্পাদনা করা আমার কমান্ডটিকে কিছুটা বর্ণময় দেখাচ্ছে। %সৃষ্ট একটি দম্পতি ঘন্টার আতঙ্কিত হয়ে পড়েছিলেন!
গেরলিংগুয়ে

12

অভিজ্ঞতার সাথে , আমার সমস্ত উবুন্টু মেশিনে প্রতি লাইনে 999 টি চরিত্রের কাটা আছে, যদিও আমি এখনও সম্পর্কিত কোনও ব্যাখ্যামূলক ডকুমেন্টেশন পাইনি।

আমি উবুন্টু 10.04, 12.04, এবং 14.04 এ পরীক্ষা করেছি এবং 999 টি চরিত্রের গণনাটি সূচি-পূর্বের প্রথম অ-হোয়াইটস্পেস অক্ষর দিয়ে শুরু হয়েছিল (আমার উদাহরণে * * * * *শিডিউলটি যা প্রতি মিনিটে 1 বারের সমান হয়)।

পালন:

  • প্রথমে আমরা কমান্ডের অক্ষরগুলি গণনা করব যা আমরা আমাদের ক্রন্টবায় যোগ করব - তফসিল ছাড়াই :

    davidamick@myputer:~$ echo -n "/bin/echo 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' > /tmp/test.log" | wc -c
    999
    davidamick@myputer:~$
    
  • প্রতি মুহুর্তে চালানোর জন্য, আমাদের ক্রোনটাব-তে সেই আদেশটি যুক্ত করুন:

    davidamick@myputer:~$ echo "* * * * * /bin/echo 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' > /tmp/test.log" | crontab -
    davidamick@myputer:~$
    
  • এক মিনিট অপেক্ষা করুন /tmp/test.log, আপনার "ক" এর সমস্তগুলি সমন্বিত একটি ফাইল তৈরি হয়েছে তা পরীক্ষা করুন:

    davidamick@myputer:~$ cat /tmp/test.log
    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
    davidamick@myputer:~$
    
  • নতুন করে শুরু করুন, ক্রন্টব এবং লগ ফাইলটি সরিয়ে দিন:

    davidamick@myputer:~$ crontab -r
    davidamick@myputer:~$ rm /tmp/test.log
    davidamick@myputer:~$
    
  • আগের মতো একই কমান্ড যুক্ত করুন, কেবলমাত্র 1 অক্ষর দীর্ঘ, (আমার ক্ষেত্রে, B):

    davidamick@myputer:~$ echo "* * * * * /bin/echo 'Baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' > /tmp/test.log" | crontab -
    davidamick@myputer:~$
    
  • আর এক মিনিট অপেক্ষা করুন, সন্ধান করুন যে নামের একটি ফাইল /tmp/test.loআপনার "a" গুলি দিয়ে তৈরি করা হয়েছিল। এটি কারণ 1000 তম চরিত্রটি কেটে গেছে।
  • নিশ্চিত করতে, যোগ করাটি সরান Bএবং পরিবর্তে 1ফাইলনামে একটি যুক্ত করুন :

    davidamick@myputer:~$ echo "* * * * * /bin/echo 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' > /tmp/test1.log" | crontab -
    
  • আরও এক মিনিট অপেক্ষা করুন, নোট করুন যে নামের একটি ফাইল /tmp/test1.loআপনার "এ" গুলি দিয়ে তৈরি হবে।
  • বোনাস প্রমাণ স্বরূপ, থেকে একটি সিমবলিক লিঙ্ক তৈরি /bin/echoকরতে /usr/bin/echoএবং এটি আপনি আপনার হুকুম থেকে একটি অতিরিক্ত 4 অক্ষর অপসারণ করতে হবে।

3
আমি কেবল এটি যাচাই করেছি, এটি সত্য। cronআমার উবুন্টুতে 14.04 নিঃশব্দে 999 টি অক্ষরে কমান্ডটি কেটে দেয়। এটি এত বাদাম, এটি হজম করতে আমার কিছুটা সময় লেগেছে। এবং এটি ইন্টারনেটে এটির নথিভুক্ত করার একমাত্র জায়গা বলে মনে হয়, 1 টি উভোট দিয়ে।
এনএইচ 2

কল্পনা করুন আপনার মতো একটি কমান্ড রয়েছে ... && stop-power-plant; start-power-plantএবং ক্রোন কেবল নিঃশব্দে চপ অফ; start-power-plant
এনএইচ 2

1
প্রায় 30 বছর পরে (ক্রোন কমপক্ষে 1988 সালের), কিছু উজ্জ্বল আত্মা এটিকে একটি ত্রুটি তৈরি করেছিল: github.com/systemd-cron/crontab/commit/…
nh2


আপনি যদি ভাগ্যবান হন তবে একটি উদ্ধৃতির অভ্যন্তরে কাটা কাটা ঘটবে এবং আপনি পাবেন /bin/sh: 1: Syntax error: Unterminated quoted stringতবে এর গ্যারান্টিযুক্ত এমন কিছুই নেই।
এনএইচ 2
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.