Aşağıdaki kodda sorun nedir?
name='$filename | cut -f1 -d'.''
Olduğu gibi, değişmez bir dize $filename | cut -f1 -d'.'
alıyorum, ancak tırnakları kaldırırsam hiçbir şey alamıyorum. Bu arada, yazarak
"test.exe" | cut -f1 -d'.'
bir kabukta istediğim çıktıyı verir test
,. Zaten $filename
doğru değerin atandığını zaten biliyorum . Ne yapmak istiyorum uzantısı olmayan bir değişkene dosya adı atamaktır.
basename "$filename" .exe
. Aksi takdirde boşluklu dosya adları kötü haber olur.
basename $filename .exe
aynı şeyi yapardı. Bu, hangi uzantıyı kaldırmak istediğinizi her zaman bildiğinizi varsayar.