আমি এটি করার জন্য তিনটি ভিন্ন উপায়ের কথা ভাবতে পারি (প্রথম দুটি অন্য কোথাও থেকে চুরি হয়েছে তবে আমি কোথায় ভুলে গিয়েছি)। আমি তৃতীয়টি ব্যবহার করি, যা আপেল স্ক্রিপ্ট থেকে শেল স্ক্রিপ্ট কল করে, কারণ আমি প্রতিবার একটি নতুন উইন্ডো খুলতে চাই এবং কারণ এটি সবচেয়ে কম ছিল।
কমপক্ষে ১০.১০ সাল থেকে ওএস এক্স-এ নির্মিত স্ক্রিপ্টের বিপরীতে, এইগুলি সমস্তই আপনার ফাইন্ডার উইন্ডোতে বর্তমান চলমান ডিরেক্টরি যা আছে ডিরেক্টরিতে টার্মিনালটি খোলায় (অর্থাত এটি খুলতে আপনাকে কোনও ফোল্ডার নির্বাচন করতে হবে না)।
ফাইন্ডার> টার্মিনাল> ফাইন্ডার চেনাশোনাটি সম্পূর্ণ করতে বেশ কয়েকটি বাশ ফাংশন অন্তর্ভুক্ত করে।
1. বিদ্যমান ট্যাবটি পুনরায় ব্যবহার করুন বা একটি নতুন টার্মিনাল উইন্ডো তৈরি করুন:
tell application "Finder" to set myDir to POSIX path of (insertion location as alias)
tell application "Terminal"
if (exists window 1) and not busy of window 1 then
do script "cd " & quoted form of myDir in window 1
else
do script "cd " & quoted form of myDir
end if
activate
end tell
২. একটি বিদ্যমান ট্যাব পুনরায় ব্যবহার করুন বা একটি নতুন টার্মিনাল ট্যাব তৈরি করুন:
tell application "Finder" to set myDir to POSIX path of (insertion location as alias)
tell application "Terminal"
if not (exists window 1) then reopen
activate
if busy of window 1 then
tell application "System Events" to keystroke "t" using command down
end if
do script "cd " & quoted form of myDir in window 1
end tell
৩. অ্যাপলস্ক্রিপ্ট থেকে ডাকা শেল স্ক্রিপ্টের মাধ্যমে প্রতিবার একটি নতুন উইন্ডো তৈরি করুন
tell application "Finder"
set myDir to POSIX path of (insertion location as alias)
do shell script "open -a \"Terminal\" " & quoted form of myDir
end tell
৪. (বোনাস) বাশ ওরফে আপনার টার্মিনালের বর্তমান ওয়ার্কিং ডিরেক্টরিটির জন্য একটি নতুন ফাইন্ডার উইন্ডো খোলার জন্য
আপনার .বাশ_ প্রোফাইলে এই উপন্যাস যুক্ত করুন।
alias f='open -a Finder ./'
৫. (বোনাস) আপনার টার্মিনাল উইন্ডোতে ডিরেক্টরিটি সম্মুখ সন্ধানকারী উইন্ডোর পথে পরিবর্তন করুন
আপনার .বাশ_প্রফাইলে এই ফাংশনটি যুক্ত করুন।
cdf() {
target=`osascript -e 'tell application "Finder" to if (count of Finder windows) > 0 then get POSIX path of (target of front Finder window as text)'`
if [ "$target" != "" ]; then
cd "$target"; pwd
else
echo 'No Finder window found' >&2
fi
}