SORU
9 EKİM 2013, ÇARŞAMBA


Değil't Dizin oluşturmak Ruby ile var

Aşağıdaki kod ile bir dizin oluşturmak için çalışıyorum:

Dir.mkdir("/Users/Luigi/Desktop/Survey_Final/Archived/Survey/test")
    unless File.exists?("/Users/Luigi/Desktop/Survey_Final/Archived/Survey/test")  

Ancak, bu hata alıyorum:

Böyle bir dosya ya da - /directory Kullanıcıları/Luigi/Desktop/Survey_Final/Arşivlenmiş/Anket/test (:: Hata ENOENT)

Neden bu dizini Dir.mkdir yukarıda ifade tarafından oluşturulan, değil mi?

CEVAP
9 EKİM 2013, ÇARŞAMBA


Muhtemelen iç içe dizin oluşturmak için çalışıyoruz. foo yok varsayarak, no such file or directory hata alırsınız:

Dir.mkdir 'foo/bar'
# => Errno::ENOENT: No such file or directory - 'foo/bar'

İç içe dizin oluşturmak için bir kez, FileUtils ihtiyaç vardır:

require 'fileutils'
FileUtils::mkdir_p 'foo/bar'
# => ["foo/bar"]

FileUtils sistem çağrısı (@mu çok kısa yorum güncelleme) yapabilirsiniz kullanmak zorunda değilsiniz: . Edit2:

> system 'mkdir', '-p', 'foo/bar' # worse version: system 'mkdir -p "foo/bar"'
=> true

Ama bu gibi görünüyor (en azından benim için öyle) gibi kötü bir yaklaşım olarak kullanıyorsunuz harici 'aracı' için kullanılamaz bazı sistemlerde (gerçi ben pek tahmin sistemi olmadan mkdir ama kim bilir).

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • andony5589

    andony5589

    7 Aralık 2011
  • уσ ρℓz sυв ιℓℓ sυв вαcқ

    уσ ρℓz

    14 EKİM 2010
  • skiesofblack.net

    skiesofblack

    14 HAZİRAN 2009