Nasıl Kullanım Brace Genişleme Linux'un Bash Kabuğu'nda

May 12, 2025
, Linux
Fetmawati Achmad Zaenuri / Shutterstock

Brace Genişleme, komut dosyaları ve takma adlarda ve Linux komut satırında kullanılabilecek dizelerin listelerini üretmek için kullanışlı bir tekniktir. Zaman kazanın ve daha az yazarak hataları önleyin.

Brace Genişleme

Bash kabuğundan önce Bir komutu yürütür Bir terminal penceresinde veya bir komut dosyasındaki bir çizgide, komuta herhangi bir değiştirme yapmanız gerekip gerekmediğini kontrol eder. Değişken adları değerleri ile değiştirilir, takma adlar, kısaltıldığı komutlar tarafından değiştirilir ve herhangi bir genişleme gerçekleştirilir. Brace Genişleme, Bash tarafından desteklenen bir genleşme biçimidir.

Brace Genişlemesi modern kabuklarda mevcuttur, ancak bazı eski kabuklardan eksik olabilir. Scripts'te Brace Genişlemesi'ni kullanacaksanız, Bash gibi brace genişlemesini destekleyen bir kabuğun çağrıldığından emin olun:

Örneklerimiz için bash kullanacağız.

Dizeli listeleri oluşturmak, bir faydadan daha yenilikten daha fazla görünebilir, ancak zamandan ve tuş vuruşlarından tasarruf sağlayabilecek bazı işlevler sunar. Genellikle, bir problem veya gereksinime basit ve zarif bir çözüm sağlayabilir.

Basit genişlemeler

Bir çiftlik genişlemesi, bir çift parantez arasında "{}" arasında yer almaktadır. Virgülle ayrılmış öğelerin bir listesi veya bir menzilli belirteç olabilir. Dizayı tırnak işaretleriyle sardığınız sürece, uzaylara izin verilmez " " . "

Virgülle ayrılmış bir liste için, genişletme işlemi her bir öğeyi sırayla alır ve arama komutuna geçer. Bu örnekte, Eko basitçe onları terminal penceresine yazdırır . Virgüllerin göz ardı edildiğini unutmayın.

 echo {bir, iki, üç, dört} 

Bir liste kelimeler veya rakam olabilir.

 echo {1,2,3,4} 

Liste öğelerinin sırası tamamen keyfidir.

 yankı (4,2,3,1) 

Bir genişletme aralığı bir başlangıç ​​ve iki dönemle bağlantılı bir son karaktere sahiptir " .. "Herhangi bir boşluk olmadan. Eksik liste öğelerinin tümü, BAŞLAT KARIŞINDAN BÜYÜK KAPASINA GERÇEKLEŞTİRMEYE BAŞLADI.

Bu, rakamları 1 ila 10 arasında yazdıracaktır.

 echo {1..10} 

Numaralandırma keyfidir. Birinde başlamak zorunda değil.

 echo {3..12} 

Aralıklar, geriye doğru koşmaları için belirtilebilir. Bu, beşten birine bir liste oluşturacaktır.

 echo {5..1} 

Aralıklar negatif sayılar içerebilir.

 echo {4 ..- 4} 

Daha önce belirttiğimiz gibi, bir aralıkın bir başlangıç ​​ve bir sonu vardır. karakter . Bir numara olması gerekmez. Bir mektup olabilir.

 echo {q..v} 

Harfler de geriye doğru çalışabilir.

 echo {f..a} 

Döngülerle Brace Genişletme Kullanımı

Scripts'deki döngülerdeki aralıklarla destek genişlemesini kullanabilirsiniz.

 I için {3..7}
yapmak
   echo $ i
Yapıldı 

Brace Genişletme Aralıkları, karakterleri döngü değişkeni olarak kullanmanıza izin verir.

 I için {M..Q}
yapmak
   echo $ i
Yapıldı 

Döngüler genellikle komut dosyalarında kullanılır, ancak neyin olacağını görmek için onları komut satırına yazmanızı engelleyecek bir şey yoktur.

 I için {3..7}; echo $ i; Yapıldı 

 I için {M..Q}; echo $ i; Yapıldı 

Birleştirici ve yuvalama

İki bitişik genişleme, diğerlerinden birinden bağımsız olarak hareket etmemektedir. Onlar değişiyorlar. İlk genişlemedeki her bir eleman, ikinci genişlemedeki her bir eleman tarafından harekete geçirilir.

 echo {q..v} {1..3} 

Genişlemeler de yuvalanabilir. İç içe geçmiş bir genişleme, hemen önceki öğe üzerinde hareket edecektir.

 echo {parça-1, parça-2 {a, b, c, d}, parça-3} 

Ayrıca, virgülle sınırlı bir aralık genişlemesi listesi oluşturarak genişlemeleri yuvalabilirsiniz.

 echo {{5..0}, {1..5}} 

Giriş ve PostScript

Bu metnin genişletme sonuçlarına dahil olması için bir ayrıntı genişlemesinden önce ve sonra metin yerleştirebilirsiniz. Bir genişlemenin önüne verilen metin girişi denirken, bir brace genişlemesinin arkasına yerleştirilen metin, PostScript'e denir.

Bu komut bir giriş kullanır.

 echo Bölüm {1..3} 

Bu örnek bir PostScript kullanır:

 echo {İçindekiler, Kağıt, Bilbiyografi} .md 

Ve bu komut her ikisini de kullanır.

 echo Chapter- {1..4} .md 

Dosya adlarını ve dizinlerini genişletme

Muhtemelen şimdi tahmin ettiğiniz gibi, Brace genişletmelerinin ana kullanımlarından biri, diğer komutlara iletilebilecek dosya ve dizin adları oluşturmaktır. Kullandık Eko Bir genişleme tetiklendiğinde tam olarak ne olduğunu görmek için uygun bir yol olarak. Dosya adlarını veya dizin adlarını giren herhangi bir komutu girdi olarak değiştirebilir ve bununla birlikte brace genişletmeyi kullanabilirsiniz.

Hızlıca Bazı dosyalar oluşturun , kullanmak dokunma :

 Dokunmatik File- {1..4} .txt 
 ls * .txt 

Aynı taban adına sahip birçok dosyanız varsa, ancak farklı dosya uzantılarınız varsa ve bir alt kümesinde bir işlem yapmak istiyorsanız, Brace Genişlemeleri yardımcı olabilir. Burada, "Program" olan bir dosyanın alt kümesini, "Source-code.zip" adlı bir zip dosyasına "program" olarak sıkıştırıyoruz.

Kalkınma dizinleri, ana programınız olarak aynı basename sahip olacak birçok dosyaları içerir. Genellikle, ".o" nesne dosyaları gibi dosyaları yedeklemek veya dağıtmak istemiyorsunuz. Bu, yalnızca dosya türlerini dahil etmek için temiz bir yoldur.

 Zip Kaynağı kodu programı {.c, .h, .css} 

Bu komut bir dosyanın bir kopyasını oluşturur ve orijinal dosyanın yedek bir kopyasını yaparak ".bak" ekler. Dikkat edilmesi gereken ilginç bir nokta, ayraç genişlemesinin virgülle ayrılmış bir liste içermesidir, ancak ilk öğe boş. Virgülü dahil etmiş olsaydık, genişleme gerçekleşmez.

 CP Brace / New / Prog-1.c {,. Bak} 
 LS Brace / New / Prog-1.C.BAK 

Farklı dizinlerde iki dosyaya bazı eylemler gerçekleştirmek için, dosyaların yolunda bir destek genişlemesi kullanabiliriz.

Bu örnekte, "Brace" dizininin "yeni" denilen iki alt dizin içerdiğini ve "eski" olarak adlandırılır. Aynı kaynak kod dosyası grubunun farklı versiyonlarını içerirler. Kullanacağız bozmak "Prog-1.c" nin iki versiyonu arasındaki farkları görmek için program.

 diff brace / {yeni, eski} /prog-1.c 

Bir projenin başlangıcında oluşturmanız gereken bir dizinin standart bir iskeletiniz varsa, Brace Genişletmeyi kullanarak bunları hızlı bir şekilde oluşturabilirsiniz. NS mkdir -P (ebeveyn) seçeneği Kayıp ana dizin oluşturur Bir çocuk dizini oluşturulduğunda.

 mkdir -p {kaynağı, inşa, adam, yardım {/ Sayfa, / Yelp, / images}} 
 Ağaç 

Brace genişlemesini kullanabilirsiniz. teçhizat ile Birden fazla dosyayı indirin .

Bu komutta, "TEST1" ve "TEST2" olarak adlandırılan iki dizinden dosya indireceğiz. Her dizin, "picture1" ve "picture2" adlı iki dosyayı tutar.

 wget https://www.url-of-your-choice.com/test {1,213/picture {İletişim bilgileri
  

Dosyaları listelemek size alınan dosyaları ve nasıl teçhizat Mevcut dosyaları olan isimleri önlemek için dosyaları yeniden adlandırın.

 ls resim *. * 

Braketi kucaklamak

Bakış genişlemesinin bir başkası olduğu görülüyor Linux'un en iyi tutulan sırları . Pek çok insan, hiçbir zaman destek genişlemesini duymadıklarını söylerken, diğerleri bana en sevdikleri komut-hat numaralarından biri olduğunu bildirir.

Bir deneyin ve sadece komut satırı go-püf noktaları için yolunu bulabilir.


, Linux - En Popüler Makaleler

Linux'ta Silinen Dosyaları TestDisk ile nasıl kurtarılır

, Linux Nov 18, 2024

Fetmawati Achmad Zaenuri / Shutterstock Hiç bir dosyayı sildiniz ve anında pişman oldunuz mu? Geri ihtiyacın var ve hızlı! Fakat ne dosya çok yeni ise,..


Linux'ta Kırık Symlinks Nasıl Bulun ve Sil Yapılır

, Linux Nov 12, 2024

Fetmawati Achmad Zaenuri / Shutterstock Linux üzerinde simgesel bağlantılar fantastik bir özelliktir, ancak kırık ve hiçbir şey işaret sola hale gel..


Kullanıcıların şifrelerini Linux'ta değiştirmeye nasıl zorlanacağı

, Linux Nov 4, 2024

Ilya Titchev / Shutterstock Şifreler, güvenliği hesaplamak için kilit taşıdır. Parolaları nasıl sıfırlayacağınızı, parola sona erme sürelerini ..


Linux'ta SQLite için DB Tarayıcısı Nasıl Kullanılır

, Linux Dec 16, 2024

Fetmawati Achmad Zaenuri / Shutterstock SQLite için DB Tarayıcı Linux'ta SQLite veritabanlarını görüntülemenizi ve düzenlemenizi sağlar. Bu ..


Bir linux bash komut dosyasında satıra göre bir dosya satırını nasıl işleme

, Linux Feb 3, 2025

Fetmawati Achmad Zaenuri / Shutterstock Bir Linux metin dosya satırının içeriğini bir kabuk betiğinde satıra göre okumak oldukça kolaydır - bazı i..


Mac'teki tüm masaüstü simgelerini nasıl gizleyeceğiniz

, Linux Jun 23, 2025

Krisda / Shutterstock Mac masaüstünüz bir karmaşa mı? Gerçekten her şeyi organize etmek istemiyor musun? Endişelenmeyin, ekranınızı bir iş araması..


Linux'daki bash sözlükleri nedir ve bunları nasıl kullanırsınız?

, Linux Jun 16, 2025

Fetmawati Achmad Zaenuri / Shutterstock.com Bash sözlükleri, Linux Shell Scripts'te size hash haritaları ve ilişkisel dizileri verir. Bu güçlü ve kull..


Pop! _OS?

, Linux Oct 20, 2025

Eğer duyduysan Pop! _OS , insanların sıklıkla ona en iyi Windows alternatifi veya oyun için ideal Linux dağıtımını olarak adlandırdığını görmüş olabilirsiniz..


Kategoriler