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

  • BachelorsPadTv

    BachelorsPad

    17 Ocak 2012
  • bombjack2991

    bombjack2991

    29 HAZİRAN 2008
  • TheXiaxue

    TheXiaxue

    3 AĞUSTOS 2009