Suivez l'idée de créer un lien, j'essaie de faire en sorte que cela fonctionne. Rappelez-vous que je ne suis pas un pro, je cherchais une solution et faire ce script à mon auto et partager avec vous.
Pour les questions futures, si vous voulez installer 2 versions de xampp sur Linux, vous devez installer : Exemple : xampp php5 sur /opt/lampp
puis le renommer en /opt/lampp5, puis faire de même avec l'installateur bin de php7 (ou tar) et le renommer en /opt/lampp7. Ensuite, copiez ce code dans un nouveau fichier script.sh
et le rendre accessible en écriture chmod +x script.sh
puis l'exécuter $ ./script.sh
o $ ./script.sh 5 start
voici l'exemple de code qui fonctionne bien sur ubuntu 16.04, c'est juste un simple script pour le faire fonctionner sur ce genre de problème, puisque sur Windows on peut le faire aux étapes de l'installation.
#!/bin/bash
LAMPP_VERSION=$1
LAMPP_ACTION=$2
LAMPP="/opt/lampp"
XAMPP=$LAMPP"/xampp"
function stopall {
sudo $XAMPP stopapache
sudo $XAMPP stopmysql
}
function startall {
sudo $XAMPP startapache
sudo $XAMPP startmysql
}
function stopmysql {
sudo $XAMPP stopmysql
}
function stopapache {
sudo $XAMPP stopapache
}
function startmysql {
sudo $XAMPP startmysql
}
function startapache {
sudo $XAMPP startapache
}
function checklampplink {
# check if exist a link and delete it
if [[ -L "$LAMPP" && -d "$LAMPP" ]]
then
echo "$LAMPP is a symlink to a directory: try DELETE!"
sudo rm -f $LAMPP
else
echo "NO $LAMPP LINK WAS FOUND!"
fi
# create a new link
echo "try to create LAMPP link ..."
cd /opt
ln -s "$LAMPP$LAMPP_VERSION" "lampp"
## check if is created
if [[ -L "$LAMPP" && -d "$LAMPP" ]];
then
echo $LAMPP "created!"
else
echo "LINK not created! exit 1"
exit 1
fi
}
function checkservices {
# check if services exists and try to stop property
PIDS_MYSQL=$(ps -C mysqld -C mysqld_safe -o pid=)
PIDS_APACHE=$(ps -C /opt/lampp/bin/ -o pid=)
if [ -n $PIDS_MYSQL ];
then
stopmysql
else
echo "NO MYSQL TO KILL"
fi
if [ -n "$PIDS_APACHE" ];
then
stopapache
else
echo "NO APACHE TO KILL"
fi
}
### begin ###
####
# get an action
if [ -z $LAMPP_ACTION ];
then
echo
echo "ACTION: ( start | stop | restart)?"
read LAMPP_ACTION
else
echo "ACTION SET TO: "$LAMPP_ACTION
fi
# if action is stop exit
if [ "$LAMPP_ACTION" == "stop" ];
then
stopall
exit 0
fi
####
# get a version
if [ -z $LAMPP_VERSION ];
then
echo
echo "VERSION: ( 5 | 7 )? "
read LAMPP_VERSION
else
echo "VERSION SET TO: " $LAMPP_VERSION
fi
if [[ "$LAMPP_VERSION" = "5" || "$LAMPP_VERSION" = "7" ]];
then
echo "GOOD version continue ..."
else
echo "Wrong version exit 1"
exit 1
fi
## if action is start or restart do the same
checkservices
# check folder link
checklampplink
echo
echo "Select an option to START:"
echo "1) ALL current installed services on xampp"
echo "2) Apache and Mysql - phpmyadmin"
echo
echo "Type enter to start option default ( 1 ) "
read USER_START
echo
echo "Starting services ..."
echo
if [ -z $USER_START ];
then
startapache
startmysql
else
if [ "$USER_START" = "1" ];
then
startall
else
startapache
startmysql
fi
fi
echo "Done";
exit 0
Si ce code a un problème de syntaxe, désolé, je ne fais que le coller ici. Bonne chance !