«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
bash: echo: yazma hatası: Kesintili sistem çağrısı
Tüm 8 basamaklı sayılarla sıralanmış bir liste oluşturmak istiyorum - 00000000'den 99999999'a. Kabuğa yazdım: f() { while IFS="" read -r line; do for i in {0..9}; do echo "$line$i"; done; done } echo | f | f | f | f | f | f | f | f | …
9 bash 

3
Bash'da SEKME ile ayrılmış dizeler nasıl yazdırılır?
Bir sekme ile ayrılmış iki dize yazdırmaya çalışıyorum. Denedim: echo -e 'foo\tbar' printf '%s\t%s\n' foo bar Her ikisi de yazdırır: foo bar İkisi arasındaki boşluk aslında 5 boşluktur (Putty'de fare ile çıktıyı seçmeye göre). Ben de aynı sonucu ile komutu yazarken CTRL + V kullanarak ve SEKME tuşuna basmayı denedim. …

2
Dinamik olarak komut oluşturma
Bir komut dosyası üzerinde çalışıyorum ve tarkomutu dinamik olarak oluşturmam gerekiyor . İşte yapmaya çalıştığım şeyi gösteren iki örnek: #!/bin/bash TAR_ME="/tmp" EXCLUDE=("/tmp/hello hello" "/tmp/systemd*" "/tmp/Temp*") _tar="tar "`printf -- '--exclude="%s" ' "${EXCLUDE[@]}"`" -zcf tmp.tar.gz" echo COMMAND: "${_tar}" ${_tar} "$TAR_ME" echo -e "\n\nNEXT:\n\n" EXCLUDE=("--exclude=/tmp/hello\ hello" "--exclude=/tmp/systemd*" "--exclude=/tmp/Temp*") _tar="tar "`printf -- '%s ' …


6
Bash sıralama dizisi elemanların uzunluğuna göre mi?
Dizeler dizisi verildiğinde, diziyi her öğenin uzunluğuna göre sıralamak istiyorum. Örneğin... array=( "tiny string" "the longest string in the list" "middle string" "medium string" "also a medium string" "short string" ) Sıralamak gerekir ... "the longest string in the list" "also a medium string" "medium string" "middle string" "short string" …


2
Adında dize olmayan dosyaları kaldır
Adlarında '999' ('' olmadan) dizesi olmayan dosyaları kaldırmak istiyorum. Denedim: grep -vlr 999 . | xargs -0 rm -f -- find . -print0 | grep --null-data -v 999 | xargs -0 rm -- Ama hiçbiri çalışmıyor. 3.2.57 bash ile macOS Sierra kullanıyorum.
9 bash  osx  filenames  rm 


3
Bir ifconfig komutundan ilk IP adresi nasıl alınır?
Komuttan gelen ilk IP adresini nasıl yakalayabilirim ifconfig? ifconfig -a enw178032: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 100.14.22.12 netmask 255.255.0.0 broadcast 100.14.255.255 inet6 fe80::250:56ff:fe9c:158a prefixlen 64 scopeid 0x20<link> ether 00:10:56:9c:65:8a txqueuelen 1000 (Ethernet) RX packets 26846250 bytes 12068811576 (11.2 GiB) RX errors 0 dropped 58671 overruns 0 frame 0 TX packets 3368855 …
9 linux  bash  awk  sed  ifconfig 

3
dosya isimlerinde kabuk genişletmesi (A | B)?
orÖrneğin bir dosyayı okurken kabuktaki bir seçimi genişletmek mümkün mü ? Bununla kastettiğim, örneğin, bir dosyadaki A veya B'yi eşleştirmek grepgibi sözdizimini desteklemesi (A|B). Benzer şekilde, bu dosyaları varsa: file1.txt file2.txt file3.txt file4.txt file5.txt Yapabileceğim cat file{1..5}.txtiçinde basho aralık genişledikçe,. Bunu sadece birkaç dosya için yapmanın eşdeğer bir yolu var …

1
STDERR öncesi STDOUT'lar gösterilsin mi?
Ben bash için yeniyim ve hayatım boyunca belirli bir komutu nasıl çalıştıracağımı, ./fffstderr'den önce düzenli stdout'ları nasıl bastıracağımı ve basamayacağımı anlayamıyorum (kendim anlamı hakkında kafam karıştı) Örneğin $ printf "I am a\ndrill\n" > fff; $ cat fff nofile fff nofile fff I am a drill cat: nofile: No such file …

10
Bash: IPv4 adresinin dört bölümünden birini çıkarın
Sözdizimini ${var##pattern}ve ${var%%pattern}bir IPv4 adresinin son ve ilk bölümünü ayıklamak için kullanabiliriz : IP=109.96.77.15 echo IP: $IP echo 'Extract the first section using ${var%%pattern}: ' ${IP%%.*} echo 'Extract the last section using ${var##pattern}: ' ${IP##*.} Parametre genişletme kullanarak bir IPv4 adresinin ikinci veya üçüncü bölümünü nasıl ayıklayabiliriz? İşte benim çözüm: …

7
`Kaynak` komutunun tersi
sourceDeğişken değerlerini okumak / yazdırmak için bash komut dosyamdaki komutu kullanıyorum more linuxmachines_mount_point.txt export linuxmachine01="sdb sdc sdf sdd sde sdg" export linuxmachine02="sde sdd sdb sdf sdc" export linuxmachine03="sdb sdd sdc sde sdf" export linuxmachine06="sdb sde sdf sdd" source linuxmachines_mount_point.txt echo $linuxmachine01 sdb sdc sdf sdd sde sdg sourceDeğişkenleri çözmek için …


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.