Yapaay zeka sitelerine terminal bash scrti yazdırmaya çalışıyorum sonuç hüsran kodlamacı abilerim el atarmısınız bu duruma
#!/bin/bash
# Yönetici izni al
if [ "$(id -u)" -ne 0 ]; then
echo "Bu işlem yönetici (root) izni gerektiriyor."
sudo "$0" "$@"
exit
fi
# Gerekli araçları kontrol et ve yükle
check_tools() {
echo "Gerekli araçları kontrol ediyorum..."
# appimagetool, snap, flatpak, ve diğer gerekli araçları kontrol et
if ! command -v appimagetool &> /dev/null; then
echo "appimagetool aracı bulunamadı. Yükleniyor..."
sudo apt update && sudo apt install -y appimagetool
fi
if ! command -v flatpak &> /dev/null; then
echo "Flatpak bulunamadı. Yükleniyor..."
sudo apt update && sudo apt install -y flatpak
fi
if ! command -v snap &> /dev/null; then
echo "Snap bulunamadı. Yükleniyor..."
sudo apt update && sudo apt install -y snapd
fi
}
# Yüklü programları listele
list_apps() {
echo "Yüklü Snap uygulamaları:"
snap list | awk '{print NR-1 ". " $1}' # Snap uygulamalarını rakamla listele
echo ""
echo "Yüklü Flatpak uygulamaları:"
flatpak list | awk '{print NR-1 ". " $1}' # Flatpak uygulamalarını rakamla listele
echo ""
echo "Yüklü Debian paketleri:"
dpkg --get-selections | awk '{print NR-1 ". " $1}' # Debian uygulamalarını rakamla listele
echo ""
}
# Programı AppImage formatına dönüştür
convert_to_appimage() {
app_name=$1
app_type=$2
echo "Seçilen program: $app_name"
# Programın yedeğini al
if [ "$app_type" == "snap" ]; then
app_path=$(snap info $app_name | grep "installed" | awk '{print $2}')
elif [ "$app_type" == "flatpak" ]; then
app_path=$(flatpak info $app_name | grep "Installed" | awk '{print $2}')
else
app_path=$(which $app_name)
fi
if [ -z "$app_path" ]; then
echo "Uygulama bulunamadı!"
return 1
fi
# AppImage formatına dönüştür
appimage_folder="${HOME}/Desktop/${app_name}_AppImage"
mkdir -p "$appimage_folder"
echo "Uygulama $app_name AppImage formatına dönüştürülüyor..."
# appimagetool kullanarak dönüştürme
appimagetool "$app_path" --output "$appimage_folder"
if [ $? -eq 0 ]; then
echo "Dönüştürme başarılı! AppImage dosyası masaüstüne kaydedildi: $appimage_folder"
else
echo "Dönüştürme sırasında bir hata oluştu."
fi
}
# Ana fonksiyon
main() {
# Gerekli araçları kontrol et
check_tools
# Yüklü programları listele
list_apps
# Kullanıcıdan seçim al
echo "Lütfen dönüştürmek istediğiniz programın numarasını girin:"
read -r choice
# Seçilen programı dönüştür
case $choice in
[1-9]*)
# Snap uygulamaları
app_name=$(snap list | awk "NR==$choice+1 {print \$1}")
convert_to_appimage "$app_name" "snap"
;;
[10-19]*)
# Flatpak uygulamaları
app_name=$(flatpak list | awk "NR==$choice+1 {print \$1}")
convert_to_appimage "$app_name" "flatpak"
;;
[20-29]*)
# Debian paketleri
app_name=$(dpkg --get-selections | awk "NR==$choice+1 {print \$1}")
convert_to_appimage "$app_name" "debian"
;;
*)
echo "Geçersiz seçim."
exit 1
;;
esac
}
# Ana fonksiyonu çalıştır
main
#!/bin/bash
# Yönetici izni al
if [ "$(id -u)" -ne 0 ]; then
echo "Bu işlem yönetici (root) izni gerektiriyor."
sudo "$0" "$@"
exit
fi
# Gerekli araçları kontrol et ve yükle
check_tools() {
echo "Gerekli araçları kontrol ediyorum..."
# appimagetool, snap, flatpak, ve diğer gerekli araçları kontrol et
if ! command -v appimagetool &> /dev/null; then
echo "appimagetool aracı bulunamadı. Yükleniyor..."
sudo apt update && sudo apt install -y appimagetool
fi
if ! command -v flatpak &> /dev/null; then
echo "Flatpak bulunamadı. Yükleniyor..."
sudo apt update && sudo apt install -y flatpak
fi
if ! command -v snap &> /dev/null; then
echo "Snap bulunamadı. Yükleniyor..."
sudo apt update && sudo apt install -y snapd
fi
}
# Yüklü programları listele
list_apps() {
echo "Yüklü Snap uygulamaları:"
snap list | awk '{print NR-1 ". " $1}' # Snap uygulamalarını rakamla listele
echo ""
echo "Yüklü Flatpak uygulamaları:"
flatpak list | awk '{print NR-1 ". " $1}' # Flatpak uygulamalarını rakamla listele
echo ""
echo "Yüklü Debian paketleri:"
dpkg --get-selections | awk '{print NR-1 ". " $1}' # Debian uygulamalarını rakamla listele
echo ""
}
# Programı AppImage formatına dönüştür
convert_to_appimage() {
app_name=$1
app_type=$2
echo "Seçilen program: $app_name"
# Programın yedeğini al
if [ "$app_type" == "snap" ]; then
app_path=$(snap info $app_name | grep "installed" | awk '{print $2}')
elif [ "$app_type" == "flatpak" ]; then
app_path=$(flatpak info $app_name | grep "Installed" | awk '{print $2}')
else
app_path=$(which $app_name)
fi
if [ -z "$app_path" ]; then
echo "Uygulama bulunamadı!"
return 1
fi
# AppImage formatına dönüştür
appimage_folder="${HOME}/Desktop/${app_name}_AppImage"
mkdir -p "$appimage_folder"
echo "Uygulama $app_name AppImage formatına dönüştürülüyor..."
# appimagetool kullanarak dönüştürme
appimagetool "$app_path" --output "$appimage_folder"
if [ $? -eq 0 ]; then
echo "Dönüştürme başarılı! AppImage dosyası masaüstüne kaydedildi: $appimage_folder"
else
echo "Dönüştürme sırasında bir hata oluştu."
fi
}
# Ana fonksiyon
main() {
# Gerekli araçları kontrol et
check_tools
# Yüklü programları listele
list_apps
# Kullanıcıdan seçim al
echo "Lütfen dönüştürmek istediğiniz programın numarasını girin:"
read -r choice
# Seçilen programı dönüştür
case $choice in
[1-9]*)
# Snap uygulamaları
app_name=$(snap list | awk "NR==$choice+1 {print \$1}")
convert_to_appimage "$app_name" "snap"
;;
[10-19]*)
# Flatpak uygulamaları
app_name=$(flatpak list | awk "NR==$choice+1 {print \$1}")
convert_to_appimage "$app_name" "flatpak"
;;
[20-29]*)
# Debian paketleri
app_name=$(dpkg --get-selections | awk "NR==$choice+1 {print \$1}")
convert_to_appimage "$app_name" "debian"
;;
*)
echo "Geçersiz seçim."
exit 1
;;
esac
}
# Ana fonksiyonu çalıştır
main