বিকল্পভাবে, একটি সি প্রোগ্রাম লেখা সম্ভব যা পছন্দসই কমান্ডটি কল করে এবং এটি / usr / bin এ সংরক্ষণ করে।
#include <stdio.h>
#include <string.h>
int main () {
char command[50]; //notice you can change this to fit your needs
int return_val;
strcpy( command, "echo \"cd /media/Dan/evolution\" | bash -i" );
return_val = system(command);
//this is equivalent to entering the command in a new bash,
//which will return and exit
return return_val;
}
এটি সংকলন করতে, ডিরেক্টরিটি যেখানে উত্সটি সংরক্ষিত হয়েছিল সেখানে যান (ব্যাশে) এবং সম্পাদন করুন (আপনার সুডোর দরকার হতে পারে):
gcc ./gb.c -o /usr/bin/gb
এখানে আরও গবেষণার পরে , আমি বুঝতে পেরেছি যে আপনার কমান্ডটি কেবল কমান্ডে system()
অন্তর্নির্মিত ব্যাশের জন্য কাজ করবে না throw এজন্য আপনাকে একটি ইন্টারেক্টিভ ব্যাশের একটি উদাহরণ তৈরি করতে হবে এবং এটিতে আপনার আদেশগুলি প্রতিধ্বনি করতে হবে। এটি মাত্রাতিরিক্ত জটিল এবং সম্ভবত অকেজো, যদি না আপনি চান না, ধরুন, শেল স্ক্রিপ্টে কলটি সংক্ষিপ্ত করুন ( some_script
পরিবর্তে sh ~/radgeRayden/Scripts/some_script
)।
সিস্টেম () ফাংশনের জন্য রেফারেন্স
alias gb='cd /media/Dan/evolution'