Bu yüzden kısa süre önce diğer kişilerle paylaşmak istediğim basit bir bash komut dosyası hazırladım. Bu yüzden, komut dosyasını, başkalarının yerleştireceği bir klasördeki dosyaları aramayı denedim, bu da birkaç dosya için iyi çalıştı.Değişken olmayan bir bash betikteki metni değiştirin
Kodumda, değişkenleri kabul etmeyen bir komutum olsa da, bunlar geçilir, ancak komutta değiştirilmezler. Yani bir değişken kullanmak yerine, sadece bilgisayarımda bulunan dosya yolunu kullanmak zorunda kaldım.
Ve herkesin bu komut dosyasını kullanmasını istediğim için bu yolları değiştirmenin bir yoluna ihtiyacım var. Bu yüzden şunu düşündüm:
Bunu bulmak için diğer dosyayı bulduğunuz komutu kullanın. Ardından, komutta bulunan yolun yolunu komutun bulduğu yolla değiştirin.
Sorunum olsa da, istediğim şey bulamadım. İşte benim kod: Ben senin soru hakkında emin değilim rağmen kullanmakta yerine dize deneyebilirsiniz,
#!/bin/bash
#variables that store the paths
dtree=$(find Downgrade -type f -iname DeviceTree*)
ramdisk=$(find Downgrade -type f -iname *.dmg)
kernel=$(find Downgrade -type f -iname kernelcache*)
#the execution of the command. (Using normal EOF without ”” doesn’t replace the strings.)
./irecovery -s <<"EOF" >/dev/null
/send Downgrade/DeviceTree.n90ap.img3 #This needs to be replaced by $dtree
devicetree
/send Downgrade/048-2441-007.dmg #This needs to be replaced by $ramdisk
ramdisk
/send Downgrade/kernelcache.release.n90 #This needs to be replaced by $kernel
bootx
/exit
EOF