আমি যে প্রোগ্রামিংয়ের ভাষাটি সবচেয়ে বেশি জানি তা হ'ল জাভা। বর্তমানে আমার সার্ভারগুলি স্বয়ংক্রিয় করতে আমাকে "শেল স্ক্রিপ্টগুলি" প্রচুর লিখতে হবে। "জাভা শেল" এর মতো কিছু আছে যাতে আমি জাভাতে শেল স্ক্রিপ্টগুলি লিখতে পারি?
আমি যে প্রোগ্রামিংয়ের ভাষাটি সবচেয়ে বেশি জানি তা হ'ল জাভা। বর্তমানে আমার সার্ভারগুলি স্বয়ংক্রিয় করতে আমাকে "শেল স্ক্রিপ্টগুলি" প্রচুর লিখতে হবে। "জাভা শেল" এর মতো কিছু আছে যাতে আমি জাভাতে শেল স্ক্রিপ্টগুলি লিখতে পারি?
উত্তর:
আপনি গ্রোভি পেতে এবং গ্রোভিশ ব্যবহার করতে পারেন। আমি এটি দিয়ে কিছু কাজ করেছি তবে আমি অ্যাডমিন স্ক্রিপ্টগুলি করার জন্য পার্ল বা বাশ / এসকে সবচেয়ে দরকারী বলে মনে করি। জাভা এর মতো অ্যাপ্লিকেশন ভাষাতে যখন ওএস কমান্ডগুলি কার্যকর করতে হয় এবং অনুসন্ধানের পাঠ্য প্রয়োগ করা হয় তখন প্রচুর ওভারহেড যুক্ত করে।
শেল ভাষায় "শেল স্ক্রিপ্ট" লিখতে হবে এমন কোনও বাস্তব প্রয়োজন নেই, আপনি যদি সি পছন্দ করেন তবে আপনি সি বা এমনকি এসেম্ব্লার দিয়ে সবকিছু করতে পারেন।
শেল স্ক্রিপ্টগুলির প্রসঙ্গে শেলটি পার্ল বা পিএইচপি এর মতো প্রোগ্রামিং ভাষার জন্য দোভাষী ছাড়া আর কিছুই নয়, তবে আপনি বেশিরভাগ ক্ষেত্রে শেল স্ক্রিপ্ট দিয়ে যে ধরণের কাজ করেন তার জন্য ভারীভাবে অনুকূলিত হন।
দীর্ঘমেয়াদে, আমি আপনাকে পরামর্শ দিচ্ছি যে আপনি বাশ বা কিছু শিখুন, যা সত্যই কঠিন নয় কারণ শাঁসগুলি তাদের দক্ষতার মধ্যে খুব সীমিত তাই যাতে শেখার মতো খুব বেশি পরিমাণ না থাকে।
কিছু হালকা জেভিএম ভাষার শেল রয়েছে তবে সেগুলি অনুবাদকের সামনে রয়েছে, সিসাদমিনিংয়ের জন্য কাস্টম উপভাষা নয়। একটি ভাল সিস্টেম শেলের জন্য দুর্দান্ত প্রক্রিয়া এবং ফাইল বিবরণকারী সমর্থন থাকা দরকার এবং সংক্ষিপ্ত বাক্য গঠন এবং বিল্টিন থাকতে হবে, এবং আমি মনে করি না এটি জাভাতে বিদ্যমান।
আপনি শেফ, পুতুল, ভ্লাদ এবং এর মতো জিনিসের সাথে স্ক্রিপ্টিংয়ের সাথে প্রোগ্রামিং মিশ্রিত করতে পারেন তবে এর অর্থ প্রথমে বাশ স্ক্রিপ্টিং শেখা, কারণ সেই ভাষাগুলি বেশ সংবেদনশীলভাবে শেলটিতে আদেশ দেয়। রুবি, পার্ল এবং পাইথনের মতো ভাষা কম ভার্বোস এবং আপনি তাদের প্রচুর ব্যবহার দেখতে পাবেন। জাভাটির ভার্বোসটি এবং এর কয়েকটি মূল মান (জেভিএম-তে সমস্ত কিছু করুন, আদর্শটি ছেড়ে যাবেন না) এটিকে কাজের জন্য খুব খারাপ-উপযুক্ত করে তোলে।
হ্যা এখানে. আমি সময়ে সময়ে বিয়ানশেল ব্যবহার করে আসছি , যদিও এটি বর্তমানে সক্রিয় বিকাশের অধীনে নেই। এটি স্ট্যান্ডার্ড জাভা সিনট্যাক্সের জন্য একটি দোভাষী এবং প্রয়োজনে গ্রাফিকাল ইন্টারপ্রেটার / পরিবেশের সাথেও আসে।
আপনি বর্ণনা অনুযায়ী আপনার শেল স্ক্রিপ্ট লিখতে পারে বিনশেল ডক্সে , কিন্তু আপনার এই জন্য আপনার জাভা ইনস্টলেশনে বিনশেল বয়াম ফাইল উপলব্ধ করার থাকবে (যেমন সেটিকে করা /ext/libআপনার JRE ইনস্টলেশন ফোল্ডারের), অন্যথায় জাভা পাবে না bsh.Interpreterবর্গ ।
যাইহোক, আমি আপনার শেল স্ক্রিপিং বিকল্পগুলি ঘনিষ্ঠভাবে দেখার পরামর্শ দিই (আপনি আপনার পরিবেশের কথা উল্লেখ করেননি, তবে লিনাক্স ব্যবহারের সময় টিশনের বাশের সাথে সুপারিশটি দুর্দান্ত)। জাভার মতো একটি পূর্ণ-বিকাশযুক্ত সাধারণ উদ্দেশ্যমূলক প্রোগ্রামিং ভাষা ব্যবহার করা কেবল তখন শেল-এর মতো কাজগুলির সাথে যেমন উত্পাদনশীল হওয়ার চেষ্টা করবে, যেমন ফাইলগুলিকে চলাফেরা করা, আদেশমূলক আদেশগুলি এবং পছন্দগুলি পছন্দ করুন।
আপনার সম্ভবত ব্যাশ স্ক্রিপ্টিংটি একবার দেখুন ।
জাভা "শেল স্ক্রিপ্টস" এবং ইন্টারেক্টিভ স্নিপেটগুলি চালানোর অনুমতি দেওয়ার জন্য আমি ফলাফল jpad.io লিখেছিলাম ফলাফলের দুর্দান্ত দৃশ্যায়ন সরবরাহ করার জন্য। এটি আমার অর্থ বোঝায়:

এটিকে স্ক্রিপ্টিং ভাষা হিসাবে ব্যবহার করে কোনও ফাইল অনুলিপি করতে আপনি: http://jpad.io/example/1I/fileio
final File file = new File("outt.csv");
Object o = new int[] {1,2,3};
JPad.writeCsv(o, file);
java.nio.file.Files.copy(file.toPath(), Paths.get("copy.csv"));
যা আপনি কমান্ড লাইন থেকে চালাতে পারেন:
> jpad fileio.jpad
> dir
29/04/2017 13:30 <DIR> .
29/04/2017 13:30 <DIR> ..
29/04/2017 13:30 16 copy.csv
29/04/2017 13:30 160 fileio.jpad
29/04/2017 13:30 16 outt.csv
পাওয়ার শেল, একটি অবজেক্ট ওরিয়েন্টেড শেল যা সি # লাইব্রেরি ব্যবহার করতে পারে, এটি খোলা হয়েছে এবং লিনাক্সের জন্য উপলব্ধ ।