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

  • Andrea Lewis

    Andrea Lewis

    14 Mart 2013
  • ASUS North America

    ASUS North A

    12 AĞUSTOS 2008
  • TecnoTutosPC

    TecnoTutosPC

    19 Kasım 2012