আমি একটি বাশ স্ক্রিপ্ট লিখেছি যা একটি সিরিজ ডিরেক্টরি তৈরি করে এবং নির্বাচিত ডিরেক্টরিতে একটি প্রকল্প ক্লোন করে।
তার জন্য, আমার cd
প্রতিটি ডিরেক্টরিতে ( project 1
এবং project 2
) দরকার, তবে স্ক্রিপ্টটি cd
দ্বিতীয় ডিরেক্টরিতে যায় না এবং কমান্ডটি কার্যকর করে না।
পরিবর্তে, এটি পরে বন্ধ হয় cd
এবং project2
ডিরেক্টরিতে ক্লোনিং । এটি কেন নীচের cd_project1
কোডটিতে ফাংশনটি কল করে না ?
#!/bin/bash
#Get the current user name
function my_user_name() {
current_user=$USER
echo " Current user is $current_user"
}
#Creating useful directories
function create_useful_directories() {
if [[ ! -d "$scratch" ]]; then
echo "creating relevant directory"
mkdir -p /home/"$current_user"/Downloads/scratch/"$current_user"/project1/project2
else
echo "scratch directory already exists"
:
fi
}
#Going to project2 and cloning
function cd_project2() {
cd /home/"$current_user"/Downloads/scratch/"$current_user"/project1/project2 &&
git clone https://username@bitbucket.org/teamsinspace/documentation-tests.git
exec bash
}
#Going to project1 directory and cloning
function cd_project1() {
cd /home/"$current_user"/Downloads/scratch/"$current_user"/project1/ &&
git clone https://username@bitbucket.org/teamsinspace/documentation-tests.git
exec bash
}
#Running the functions
function main() {
my_user_name
create_useful_directories
cd_project2
cd_project1
}
main
টার্মিনাল আউটপুট:
~/Downloads$. ./bash_install_script.sh
Current user is mihi
creating relevant directory
Cloning into 'documentation-tests'...
remote: Counting objects: 125, done.
remote: Compressing objects: 100% (115/115), done.
remote: Total 125 (delta 59), reused 0 (delta 0)
Receiving objects: 100% (125/125), 33.61 KiB | 362.00 KiB/s, done.
Resolving deltas: 100% (59/59), done.
~/Downloads/scratch/mihi/project1/project2$
exec bash
।