এমনটি নয় যে আমি এটি করার পরামর্শ দেব।
(sirius)~: zsh -c 'print hello; zsh -i'
hello
(sirius)~: echo $SHLVL
2
স্ক্রিন এবং $STY
ভেরিয়েবলটি ব্যবহার করে আপনি খেলতে পারেন এমন অন্যান্য কৌশলও রয়েছে ।
আপনি যদি স্বতন্ত্র স্ক্রিন সহ zsh থেকে কিছু চালাতে চান তবে আপনি আপনার .zshrc বা .zlogin এর মধ্যে $ STY ভেরিয়েবলটি পরীক্ষা করতে পারেন। এটি ফরম্যাটে রয়েছে <PID>.<TTY>.<HOSTNAME>
।
if [[ -n $STY ]] then
if [[ -f ~/.zsh-$STY[(ws:.:)2] ]] then
. ~/.zsh-$STY[(ws:.:)2]
fi
fi
যদি স্ক্রিনে থাকে এবং যদি ~/.zsh-<TTY>
($ STY ভেরিয়েবল থেকে) উপস্থিত থাকে তবে উত্সটি সেটিকে প্রস্তুত করুন, তারপরে আপনার আনন্দময় পথে চালিয়ে যান। ইন্টারেক্টিভ শেলটি কল করার আগে আপনি পরিবেশের পরিবর্তনশীলও সেট করতে পারেন।
> FOO=bar zsh -i
> env | grep FOO
FOO=bar
> RUNTHISCOMMAND=/path/to/script zsh -i
.zshrc:
if [[ -n $RUNTHISCOMMAND ]] then
$RUNTHISCOMMAND
fi
আপনার .zshrc / .zlogin এ চেকগুলি যুক্ত করুন।