«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
Belirli komutlar için özel bir otomatik tamamlama nasıl belirtilir?
Sekmeyi iki katına çıkardığınızda bash öğesinin tam olarak neyi göstereceğini bilmesinin bir yolu var mı? Örneğin scpy, birkaç argüman gerektiren bir python betiğim var . Mesela apt-getçift ​​sekmesi size verirse autoclean build-dep temiz dselect-yükseltme temizleme kaynak yükseltme otomatik kontrol kontrol yükseltme yükseltme yükleme kaldır Bunu kendi komut dosyalarınız / programlarınız …

2
Sipariş edilen STDOUT / STDERR nasıl yakalanır ve zaman damgası / ön ekler nasıl eklenir?
Neredeyse incelemiş bulunuyoruz tüm mevcut benzer soruları boşuna. Sorunu ayrıntılı olarak anlatayım: Bazı katılımsız komut dosyaları çalıştırıyorum ve bunlar standart çıktı ve standart hata satırları üretebiliyorum, bunları bir terminal emülatörü tarafından görüntülendikleri şekilde tam sırada yakalamak ve daha sonra bunlara "STDERR:" ve "STDOUT:" gibi bir önek eklemek istiyorum. Kullanıma hazır …

2
Bash'te döngü koşulu sırasındaki negatif
Üzerinde çalıştığım betiğin bir bölümünde, girilen IP adresinin doğru biçimde olduğunu doğrulamak istiyorum. Giriş formatı doğru değil iken bir döngü yapmak istiyorum. Format doğru iken aşağıdakiler bir döngü için çalışır. while [[ $range =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3} ]] do Bunu nasıl döndürebilirim diyebilirim SÖZLEŞME. !=~İşe yarayacağını umuyordum , ancak sözdizimi hatası alıyorum.
25 bash 

2
>> ve> \> operatörleri arasındaki fark?
RHEL 6 >>Ve >\>operatörleri arasında bir fark var mı ? Bir RHEL eğitim kitabında aşağıdaki bulanıklığı okudum: Msgstr "" "Var olan bir dosyanın sonuna standart yönlendirme oku, çift yönlendirme oku ve ls >\> filelist >>Operatöre daha alışkınım ve ikisini de denediğimde farklı sonuçlar alıyorum. Kullanmak >>(onu beklendiği gibi) izleyen dosyaya …
25 bash  rhel 


3
Bir deniz kabuğu altında olup olmadığını nasıl anlayabilirim?
exitKendimi terminalden çıkmamak için yerleşikin işlevselliğini değiştiren bir işlev yazmaya çalışıyorum . SHLVLOrtam değişkenini kullanmaya çalıştım, ancak alt kabuklarda değişmiyor gibi görünüyor: $ echo $SHLVL 1 $ ( echo $SHLVL ) 1 $ bash -c 'echo $SHLVL' 2 Benim işlevim aşağıdaki gibidir: exit () { if [[ $SHLVL -eq 1 …
24 bash  shell  exit  subshell 

3
/ Bin / bash öğesinin içeriği nedir ve yanlışlıkla üzerine yazsam, ne yapmalıyım?
Yanlışlıkla / bin / bash dosyasını / bin klasörünün içine koymak niyetinde olduğum aptal bir betiğin üzerine yazdım. Bu dosyanın içeriğini nasıl geri alabilirim? İçeriği web’de bulabilmemin ve tekrar kopyalamamın bir yolu var mı? Buradaki seçeneklerim neler, terminalin "Çok Fazla Sembolik Bağlantı mı?" Hala bu tür şeylere yeniyim ve alabildiğim …



5
Hangi bash çalıştıran tty almak için?
Bu sayfa tarafından önerilen ikinci yöntemde , bash komutunun çalıştırıldığı tty'yi alır: ps ax | grep $$ | awk '{ print $2 }' Bence bu kesinlikle biraz tembel, ancak bunlardan sadece birini çıkarmak için çalışan tüm süreçleri listeliyordum. Daha verimli olmaz mıydı (Ayrıca istenmeyen etkiler doğuracak mı diye soruyorum): ps …
24 bash  tty  ps 


1
Komut satırı araçlarının kendi otomatik tamamlama listeleri nasıl var?
Ubuntu'daki Bash, bir aracın belirli bir eylem listesini nasıl biliyor? Örneğin, apt-get ve tab komutunu iki kez yazarsam, sadece kaldır, güncelleme, yükseltme ... vb. Görürüm, başka bir komutun eylemlerini veya geçerli dizindeki dosyaları göremiyorum. Go'da bir komut satırı aracı geliştiriyorum ve onu destekleyen dağıtımlar için bu özelliği sağlamak istiyorum.

4
Bash komut tamamlamasını nasıl özelleştirebilirim?
Kısaca, completeyerleşik komutları kullanarak özelleştirilmiş komut argümanlarının tamamlanmasını ayarlamak yeterince kolaydır . Örneğin, bir özeti olan varsayımsal bir komut için foo --a | --b | --c,complete -W '--a --b --c' foo Ayrıca bastığınızda olsun tamamlama özelleştirebilirsiniz Tabbir de boş kullanarak istemi complete -E, örneğin complete -E -W 'foo bar'. Sonra …

4
Bash ile başlayan: -lt ve -gt argümanları
Bash ile başlıyorum ve aşağıdakileri buldum: if test $first -lt $second then echo $first is lower than $second else if test $first -gt $second then echo $first is higher than $second else echo $first and $second are equals fi fi Senaryoyu okumak ve çalıştırmak için ne işe yaradığını biliyorum, ama …
24 bash  shell  test 


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.