«bash» etiketlenmiş sorular

Diğer Bourne / POSIX mermilerinin aksine, GNU'dan Bourne Again SHell'e özgü sorular. Genel olarak Unix kabukları hakkında sorular için / shell etiketini kullanın.

2
Kabuktaki $ @ veri yapısı nedir?
Genellikle $@0 $ dışındaki tüm argümanları temsil etmek için kullanırız . Ancak, veri yapısının ne olduğunu bilmiyorum $@. Neden $*çift ​​tırnak içine alındığında farklı davranıyor , kimse bana tercüman düzeyinde bir açıklama verebilir mi? Döngü için yinelenebilir, bu yüzden dizi gibi görünüyor. Bununla birlikte, echo $@bir dizi ise, sadece ilk …
13 bash  shell 

3
Bash [[]] komutu içinde otomatik değişken genişletme
Bir değişkeni kayıttan çıkarırken bash, $işaretini kullanmanız gerekir . Bununla birlikte, aşağıdakilerin iyi çalıştığı görülüyor: x=5 [[ x -gt 2 ]] Bunu açıklayan var mı? Düzenle: (daha fazla bilgi) Demek istediğim, [[]] komutunun $ işaretini kullanmadan değişkenim x'in kayıtlarını nasıl ve neden kaldırdığıdır. Ve evet, x = 1 ise, ifade …


4
Bir değişkenin içeriğinin içeriğini kabuk betiği ile yazdırmak mümkün müdür? (dolaylı referans)
Aşağıdaki değişkenleri beyan ettiğimi varsayalım: $ var='$test' $ test="my string" İçeriğini yazdırırsam aşağıdakileri görürüm: $ echo $var $test $ echo $test my string İçeriğinin içeriğini yazdırmanın bir yolunu bulmak istiyorum $var(ki içeriği $test). Bu yüzden aşağıdakileri yapmaya çalıştım: $ echo $(echo $var) $test Ama işte sonuç, $testdeğil "my string"... Değişkenlerin …

1
Bash'in tamsayı yerine sekizlik kodu yorumlamasını nasıl engelleyebilirim?
Bir Horoskop RSS betiği Unix / Linux projesine giriş olarak yazıyorum ve Profesörüm dersten sonra kalmayı başarabildiğim bir zamanda çözemedi. Gerçek tarihleri ​​kontrol etmek için nasıl kullanacağımı anlayamadığım için, kullanıcı girişinin MMDD formatında standart sayılar olmasını sağlayarak temel aritmetiği deneyeceğim. Ona göre senaryo, tamsayı yerine sekizli kod olarak girdi okuyor …

3
Neden `| '' tam anlamıyla bir küre şeklinde muamele görmüyor?
Benim sorum , düzenli ifadeyi bir kabuk değişkeninde saklamak, kabuğa özel karakterleri alıntılamaktan kaynaklanan sorunları nasıl önler? . Neden bir hata var: $ [[ $a = a|b ]] bash: syntax error in conditional expression: unexpected token `|' bash: syntax error near `|b' İçinde [[ ... ]]ikinci terimin =bir globbing deseni …
13 bash 


2
Ctrl-R ters aramasından sonra ileri arama için tek kısayol
Her zaman Ctrl+ kullanıyorum R, ama çok çabuk bastığım için sık sık peşinde olduğum komutu geçiyorum. İleriye doğru arama yapmak için, önce terminal kullanılmadığı sürece Ctrl+ Skullanılabilir (benim durumumda konsole stty -ixon, ~/.bashrcdüzelttiği yerde). Ancak, iki kez basmam gerekiyor: bir kez modda i-searcholduktan sonra giriyor gibi görünüyor reverse-i-searchve aslında geri …

6
Yürütmeden önce komut ikili dosyalarının doğrulanması
Bir bash betiğinden gerçekte ne yürüttüğünüzü kontrol etmek için herhangi bir yöntem var mı? (Örneğin: sizin bash komut çeşitli komutlar çağırıyor Say tar, mail, scp, mysqldump) ile emin olmak isteyen targerçek, gerçek olan tarile belirlenebilir olan rootdosya ve üst dizin sahibi ve yazma izinleri olan tek varlık kullanıcıya ve sahibi …

8
Bir değişkenin içeriğini kelimelerle ters çevirme
Eğer bir değişkenim varsa VAR='10 20 30 40 50 60 70 80 90 100' ve yankılanır echo "$VAR" 10 20 30 40 50 60 70 80 90 100 Ancak, daha fazla komut dosyası aşağı gibi bir değişken olarak gösterir bu değişkenin sırasını tersine gerekir echo "$VAR" | <code to reverse …
13 linux  bash  shell  variable 



4
{A, b, c} bash içinde ne zaman genişletilir, ne zaman değildir?
İçeren bir bash betiği for i in {a,b}-{1,2}; do echo $i; done baskılar a-1 a-2 b-1 b-2 yürütüldüğünde. Beklediğim bu - {a,b}yapı genişledikçe. Ancak, (başka) bir komut dosyası içerdiğinde v={a,b}-{1,2} echo $v yazdırır {a,b}-{1,2} beklediğim gibi değil. Yazdırmasını bekliyordum a-1 a-2 b-1 b-2. Açıkçası, {a,b}yapı genişletilmemiştir. Bu şekilde genişleyebilirim v=$(echo …

1
Klasöre girerken geçici bash diğer adlarını ayarlama
Bazen bir klasöre girdiğimde çok özelleştirilmiş bash takma adlarına ve belki de tuş bağlantılarına sahip olmayı seviyorum (CLI'dan çok sayıda komut yazmak için kullanıldığım bir proje olabilir). "ProjectAlpha /" gibi bir klasöre girdiğimde varsayalım: alias doTaskX='./app arg1 arg2...|filter arg1 arg2...' ... Düşündüğümden daha fazlası: Takma adları ve ortak komutları gösteren …
13 bash  shell  alias 

2
Bash'da “<Esc> Kv” nedir
Ben bash ve basında olduğumda Esc, Shift+ K, Vbash ateşlerse $EDITORbenzer bir dosya adıyla /tmp/bash-fc-186566385. Neden bu ve amacı nedir? Muhtemelen bash ile koştuğumu belirtmem gerekiyor set -o vi.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.