SORU
3 EKİM 2008, Cuma


Nasıl kabuk komut dosyası için Yakut kullanırım?

Bazı basit kabuk yapmak istediğim görevler için komut dosyası var

Örneğin: bazı dosyalar düzenli ifade ile eşleşen bir listeden çalışma dizini Seçerek bir dosya.

Biliyorum bunu yapabilirim bu tarz şeyleri kullanarak standart bash ve grep ama güzel olurdu yapabilmek için hack hızlı komut çalışacak, windows ve linux olmadan bana sahip olmak için ezberlemek bir yığın komut satırı programları ve bayraklar vb.

Bu yola çıkmaya çalıştım ama geçerli dizin için bir referans gibi bilgileri almak gerekir nerede bocalama sona erdi

Soru: hangi parçalar Ruby kütüphaneleri ruby kabuk betikleri yazmak için bilmek gerekir mi?

CEVAP
3 EKİM 2008, Cuma


Varsayılan olarak, zaten Dir ve kendileri tarafından oldukça yararlı olan File erişebilir.

Dir['*.rb'] #basic globs
Dir['**/*.rb'] #** == any depth of directory, including current dir.
#=> array of relative names

File.expand_path('~/file.txt') #=> "/User/mat/file.txt"
File.dirname('dir/file.txt') #=> 'dir'
File.basename('dir/file.txt') #=> 'file.txt'
File.join('a', 'bunch', 'of', 'strings') #=> 'a/bunch/of/strings'

__FILE__ #=> the name of the current file

Ayrıca stdlib dan yararlıdır FileUtils

require 'fileutils' #I know, no underscore is not ruby-like
include FileUtils
# Gives you access (without prepending by 'FileUtils.') to
cd(dir, options)
cd(dir, options) {|dir| .... }
pwd()
mkdir(dir, options)
mkdir(list, options)
mkdir_p(dir, options)
mkdir_p(list, options)
rmdir(dir, options)
rmdir(list, options)
ln(old, new, options)
ln(list, destdir, options)
ln_s(old, new, options)
ln_s(list, destdir, options)
ln_sf(src, dest, options)
cp(src, dest, options)
cp(list, dir, options)
cp_r(src, dest, options)
cp_r(list, dir, options)
mv(src, dest, options)
mv(list, dir, options)
rm(list, options)
rm_r(list, options)
rm_rf(list, options)
install(src, dest, mode = <src's>, options)
chmod(mode, list, options)
chmod_R(mode, list, options)
chown(user, group, list, options)
chown_R(user, group, list, options)
touch(list, options)

Çok güzel

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 1881 Animation

    1881 Animati

    5 EKİM 2013
  • Sams Page :D

    Sams Page :D

    15 Mart 2009
  • SVB International

    SVB Internat

    29 EKİM 2011