«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.

3
Bir bash betiğinde daha deyimsel olan: `|| true veya || : `?
Çok fazla kabuk betik yapmıyorum, bu yüzden belgelerigit submodule okurken biraz şaşırmıştım ve bu belgede kullandıkları sözdizimini gördüm: Herhangi bir alt modüldeki komuttan sıfır olmayan bir dönüş işlemin bitmesine neden olur. Bu || :komutun sonuna ekleyerek geçersiz kılınabilir . || :Başarıyla çıkmak için bir komutu zorlamak için bir stenoya bakmak …
36 bash  shell 


4
Bash ile bir dosyadan satırları okuma: vs.
Bir metin dosyasını okumaya ve her satırda bir bash betiği kullanarak bir şeyler yapmaya çalışıyorum. Öyleyse, şuna benzeyen bir listem var: server1 server2 server3 server4 Bir süre döngü kullanarak, bunun üzerine döngü olabilir düşündüm: while read server; do ssh $server "uname -a" done < /home/kenny/list_of_servers.txt While döngüsü 1 işlemden sonra …


12
Bir numaraya binlerce ayırıcı ekleyin
Python'da re.sub(r"(?<=.)(?=(?:...)+$)", ",", stroke ) Bir sayıyı üçüzlere bölmek için, örneğin: echo 123456789 | python -c 'import sys;import re; print re.sub(r"(?<=.)(?=(?:...)+$)", ",", sys.stdin.read());' 123,456,789 Bash / awk ile aynı nasıl yapılır?

4
Belirli bir klasördeki belirli bir uzantıya sahip tüm dosyaları nasıl silebilirim?
Geçerli / çalışan dizini (kullanarak gezinerek cd) belirli bir dizine ayarladıysam ve şunu yazın: rm *.xvg Bu komut ne yapacak? Bu doğru mu yukarıdaki komut olacak sadece uzantılı dosya silme .xvg sadece çalışma dizininde? Bunu sormadan önce denemek konusunda gergindim, çünkü yukarıdaki komutun sadece ÇALIŞMA YÖNETMENİNDE YERLİ.xvg dosyaları sileceğinden kesinlikle …
36 bash  shell  directory  rm 

3
`Sözdizimi hatası:“ (”beklenmeyen” dizisi oluştururken
İki tane (Debian) Linux sunucum var. Bir kabuk betiği oluşturuyorum. İlkinde bir dizi yaratıyorum. #!/bin/bash target_array=( "/home/user/direct/filename -p123 -r" ) Bu iyi çalışıyor. Ancak bunu diğer sunucuda çalıştırdığımda şunu alıyorum: Syntax error: "(" unexpected Her iki sunucunun da aynı olduğunu söyleyebilirim. Birisi bunun neden işe yaramadığına ışık tutabilir mi? Doğrudan …

4
1. argüman hariç $ @
Bu şekilde çalışan bir kabuk betiği yazmam gerekiyor: ./myscript arg1 arg2_1 arg2_2 arg2_3 ....... arg2_# script içinde bir for döngüsü var for i in $@ Ancak bildiğim gibi, $ @ 1 - $ ($ # - 1) arasında bir değer içeriyor. Fakat benim programım için $ 1, $ 2 $ …
36 bash  shell  scripting 


3
Geriye doğru hareketi anlama (`)
Komutu deniyorum $ b=5; echo `$b`; -bash: 5: command not found ancak olması gerektiği gibi 5 yazdırmaz. Burada ne özlüyorum? Komutlarda `(backquote / backtick) ne anlama geliyor? `İçindeki komutları değerlendiren ve çıktılarla değiştiren bir şey gibi görünüyor .

4
cd'yi itme yerine takma - iyi bir fikir mi?
Aşağıdaki takma adı kullanmak iyi bir fikir midir: cd() { pushd $1; } bash olarak mı? Bunun çok yararlı olacağını düşünüyorum, çünkü daha sonra popdsadece bir cd -kez yerine bir dizi s kullanabilirim . Bunun bir problem olabileceği bir durum var mı?


7
Çocuklarını öldürmeden bir terminali nasıl kapatabilirim (önce “ekran” olmadan)?
Bazen gnome-terminalinde bir uygulama çalıştırıyorum, fakat sonra birden bire cüceyi yeniden başlatmam gerekiyor. Sanırım sorunun cevabı da yararlı, o zaman bir şeylerin olduğu SSH ile olan bağlantısını kesmek istiyorum. Gnome'un terminal ağacı şöyle görünür: gnome-terminal bash some-boring-process 'Dan' bashçıkarabilirim ' gnome-terminal(veya some-boring-processbash ' dan çıkarabilir ve çıkışını bir yere yönlendirebilir …

7
Dd çıkışını nasıl bastırabilirim?
Kullanarak bazı dosyalar oluşturan bir bash betiğim var dd. Sorun şu ki dd, betiğimin çıktısını bozacak büyük miktarda çıktı atıyor. Arama yaparak bir çözüm buldum: dd if=boot1h of="/dev/r$temp1" >& /dev/null Bir alternatif var mı, yoksa /dev/nulltek yöne mi yönlendiriyor ?
35 bash  sudo  su  dd 

5
~ / .Bash_profile dosyam neden çalışmıyor?
Linux Mint kullanıyorum. Giriş kabuğum ( cat /etc/passwd | grep myUserName) bash. Grafik masaüstü ortamımı başlattıktan ve ondan bir terminal emülatörü çalıştırdıktan sonra, .bash_profilebunun kaynak olmadığını görebiliyorum (içinde var olan ortam değişkendir export). Ancak bir metin konsolundan ( ctrl+ alt+ F1) giriş yaparsam veya bash -lterminal emülatöründen el ile çalıştırsam …
35 bash  shell  login  profile 

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.