কিভাবে zsh থেকে বাশ ব্যবহার করে একটি শেল স্ক্রিপ্ট 'উত্স' করবেন?


14

আমি জেডএস ব্যবহার করছি এবং এটি খুব পছন্দ করছি তবে অ্যান্ড্রয়েড উত্সের সাথে প্রচুর পরিশ্রম করছি যার সংকলন স্ক্রিপ্ট রয়েছে যাতে ব্যাশের সঠিক মূল্যায়ন করা দরকার require এই স্ক্রিপ্টগুলি সংকলনের পূর্বে উত্সাহিত করা উচিত এবং পরিবেশের পরিবর্তনশীল এবং শেল ফাংশন সংকলনের সময় ব্যবহৃত হয় তা সংজ্ঞায়িত করতে হবে।

জেডএস এই ফাইলগুলির উত্স তৈরি করতে পারে না এবং আমি emulate bashপ্রতিবার যখন স্পেসটি হিট করব তখন প্রচুর পরিমাণে ত্রুটিযুক্ত হয়ে আমার শেলটি অকার্যকর হয়ে উঠবে (আমি ওহ-মাই-জেডএস ব্যবহার করছি, সম্ভবত এটি কোনও কারণ?):

url-quote-magic:24: bad pattern: ( ):/(|/localhost)/*

এই ফাইলগুলি মূল্যায়নের জন্য বাশে স্যুইচ না করার জন্য বা বাশ উদাহরণটি উপস্থাপন করার জন্য এবং আমার জেডেএস সেশনে সোর্সিংয়ের সময় সংজ্ঞায়িত করা নতুন পরিবেশের ভেরিয়েবল / ফাংশন আমদানি করার কোনও উপায় আছে কি? বা অ্যান্ড্রয়েডে আমার যতবার কাজ করা দরকার তা প্রতিবারেই আমি বাশে স্যুইজড হয়ে যাব?

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

http://nilvec.com/building-cyanogen-from-source/

মূলত, কেবল সেটিংটি unsetopt nomatchzsh কে তুলনা না করেই তুলনামূলকভাবে ওয়াইল্ডকার্ডগুলির বিরুদ্ধে অভিযোগ করা বন্ধ করতে বলবে, যা স্ক্রিপ্টগুলি সম্পূর্ণ করার জন্য যথেষ্ট। completeএকটি অ্যান্ড্রয়েড ম্যাক্রোতে পরিসমাপ্তি সক্ষম করার জন্য ব্যাশ অভ্যন্তরীণ কমান্ডের ব্যবহার সম্পর্কে এখনও একটি ত্রুটি থাকবে but তবে এটি একেবারেই সমালোচিত নয়।

উত্তর:


4

আপনি আপনার সংকলন কমান্ডলাইনটিকে একটি বাশ স্ক্রিপ্টে রাখতে পারেন, যা সংকলন স্ক্রিপ্টগুলি সংকলন কমান্ডটি কার্যকর করতে চায় sources

কিছুটা এইরকম

    #!/bin/bash
    . /path/to/environmentscript
    . /path/to/morefunctionsscript

    compile_command

তারপরে compile_commandহাত বোলাবার পরিবর্তে আপনি কেবল আপনার নতুন বাশ স্ক্রিপ্টটি চালু করবেন।


এটি একটি সম্ভাব্য সমাধান, তবে দুর্ভাগ্যক্রমে পরিবেশের স্ক্রিপ্টগুলি সম্পূর্ণ হতে কয়েক সেকেন্ড সময় নেয় এবং সংকলন কমান্ডটি অনেকগুলি পরিবর্তিত হয়। তাই আমি প্রতিদিন কাজ করার জন্য এটির উপর নির্ভর করতে পারি না।
Gnurou
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.