SORU
8 HAZİRAN 2009, PAZARTESİ


Bash dosya adı ve uzantısı ayıklamak

Dosya adı (uzantısı olmadan) ve uzantısı ayrı ayrı almak istiyorum.

Bulduğum en iyi çözüm şu ana kadar

NAME=`echo "$FILE" | cut -d'.' -f1`
EXTENSION=`echo "$FILE" | cut -d'.' -f2`

Bu dosya adı birden çok varsa işe yaramıyor çünkü yanlış "." karakterleri. Diyelim ki vara.b.jsdüşününbirveb.jsyerinebir.bvejs.

Python ile kolayca yapılabilir

file, ext = os.path.splitext(path)

ama mümkünse sadece bunun için bir Python yorumlayıcısı yangın, gitmemeyi tercih ederdim.

Daha iyi fikri olan?

CEVAP
8 HAZİRAN 2009, PAZARTESİ


İlk, yolu olmadan dosya:

filename=$(basename "$fullfile")
extension="${filename##*.}"
filename="${filename%.*}"

Alternatif olarak, son odaklanabilirsiniz '/' yerine yolu '. eğer öngörülemeyen dosya uzantıları varsa bile çalışmalıdır:'

filename="${fullfile##*/}"

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • engineerguy

    engineerguy

    10 Ocak 2010
  • spederson7

    spederson7

    17 Temmuz 2006
  • Subscribe!!

    Subscribe!!

    3 EKİM 2009