কোনও উপনাম টার্মিনালে কেন কাজ করে তবে স্ক্রিপ্ট থেকে ফোন করা হয় না কেন?


1

আমি আমার। / .Bash_ প্রোফাইলে নিম্নলিখিতগুলি যুক্ত করেছি

# opens "flashlog.txt" in Console
alias trace='open -a /Applications/Utilities/Console.app/ ~/Library/Preferences/Macromedia/Flash\ Player/Logs/flashlog.txt'

# clears "flashlog.txt"
alias cleartrace='cat /dev/null > ~/Library/Preferences/Macromedia/Flash\ Player/Logs/flashlog.txt'

সুতরাং, টার্মিনালে আমি কমান্ড "ট্রেস" লিখতে এবং কনসোলে ফ্ল্যাশলগ.টিএসটিএসটি দেখতে পারি। আমি "ক্লেয়ারট্রেস" কমান্ডটিও প্রবেশ করতে পারি এবং ফ্ল্যাশলগ। টেক্সট সাফ হয়ে যায়। এই কাজ দুর্দান্ত।

তবে, আমি যদি নিম্নলিখিতটি দিয়ে একটি নতুন বাশ স্ক্রিপ্ট তৈরি করি তবে আমি একটি ত্রুটি পেয়েছি "ক্লিয়ারট্রেস: কমান্ড পাওয়া যায় নি":

#!/bin/bash
cleartrace
cp -v -f ActivityLauncher.swf ../launchers/addu02l05_launcher_1.swf
open "/Applications/Adobe Flash CS4/Players/Flash Player.app" ./test.swf 

কোনও উপনাম টার্মিনালে কেন কাজ করে তবে স্ক্রিপ্ট থেকে ফোন করা হয় না কেন? (আমি কীভাবে এটি ঠিক করব?)

উত্তর:


4

এটি কারণ ব্যাশ কেবল ইন্টারেক্টিভ শেলগুলির জন্য ~ / .bash_ প্রোফাইলে পড়ে। আপনার উরফ সংজ্ঞাগুলি ~ / .bashrc এ সরান এবং এটি কাজ করা উচিত। কীভাবে এটি সব কাজ করে সে সম্পর্কে আরও বিশদের জন্য ব্যাশ ম্যানপেজের ইনভোকেশন বিভাগটি একবার দেখুন।


1
এটি সত্য নয়। unix.stackexchange.com/questions/1496/…
টাইলো

2

বাশ তথ্য ফাইলটি বলে:

প্রায় প্রতিটি কাজের জন্য, শেল ফাংশনগুলি এলিয়াসগুলির চেয়ে বেশি পছন্দ করা হয়।

ফাংশনগুলি একটি জিনিসের জন্য রফতানি করা যায়।


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