Pytania otagowane jako bash

Pytania specyficzne dla GNU Bourne Again SHell, w przeciwieństwie do innych powłok Bourne / POSIX. W przypadku pytań dotyczących powłok uniksowych użyj zamiast tego znacznika / shell.


2
bash: echo: błąd zapisu: przerwane wywołanie systemowe
Chcę wygenerować posortowaną listę ze wszystkimi 8-cyfrowymi liczbami - od 00000000 do 99999999. Wpisałem powłokę: 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
Jak wydrukować ciągi oddzielone TAB w bash?
Próbuję wydrukować dwa ciągi znaków oddzielone TAB. Próbowałem: echo -e 'foo\tbar' printf '%s\t%s\n' foo bar Oba drukują: foo bar Gdzie biała spacja między nimi wynosi w rzeczywistości 5 spacji (zgodnie z wyborem wyjścia za pomocą myszy w Putty). Próbowałem również użyć CTRL + V i naciskając TAB podczas wpisywania polecenia, …

2
Zbuduj polecenie dynamicznie
Pracuję nad skryptem i muszę tardynamicznie budować polecenie. Oto dwa przykłady ilustrujące to, co próbuję zrobić: #!/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 ' "${EXCLUDE[@]}"`" -zcf test.tar.gz" …

6
Tablica sortowania według Bash według długości elementów?
Biorąc pod uwagę tablicę ciągów, chciałbym posortować tablicę według długości każdego elementu. Na przykład... array=( "tiny string" "the longest string in the list" "middle string" "medium string" "also a medium string" "short string" ) Powinien sortować do ... "the longest string in the list" "also a medium string" "medium string" …



2
Usuń pliki bez ciągu w nazwie
Chcę usunąć pliki, które nie mają w nazwie nazwy „999” (bez „”). Próbowałem: grep -vlr 999 . | xargs -0 rm -f -- find . -print0 | grep --null-data -v 999 | xargs -0 rm -- Ale żaden z nich nie działa. Używam macOS Sierra z bash: 3.2.57.
9 bash  osx  filenames  rm 


3
Jak przechwycić pierwszy adres IP z polecenia ifconfig?
Jak przechwycić pierwszy adres IP, który pochodzi z ifconfigpolecenia? 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 …
9 linux  bash  awk  sed  ifconfig 

3
rozszerzenie powłoki (A | B) w nazwach plików?
Czy można na przykład rozszerzyć orwybór w powłoce podczas odczytu pliku? Rozumiem przez to, że na przykład grepobsługuje składnię, taką jak (A|B)dopasowanie A lub B w pliku. Podobnie, jeśli mam te pliki: file1.txt file2.txt file3.txt file4.txt file5.txt Mogłem zrobić cat file{1..5}.txtw bash, ponieważ rozszerza zakres. Czy istnieje równoważny sposób na …

1
wyświetlać STDOUT przed STDERR?
Jestem nowy w bash i nie mogę przez całe życie wymyślić, jak uruchomić określone polecenie, przypuszczać ./fffi drukować standardowe stdouts przed stderr (sam jestem zdezorientowany co do znaczenia) na przykład $ printf "I am a\ndrill\n" > fff; $ cat fff nofile fff nofile fff I am a drill cat: nofile: …

10
Bash: Wyodrębnij jedną z czterech sekcji adresu IPv4
Możemy użyć składni ${var##pattern}i ${var%%pattern}wyodrębnić ostatnią i pierwszą sekcję adresu IPv4: 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##*.} Jak możemy wyodrębnić drugą lub trzecią sekcję adresu IPv4 za pomocą rozszerzenia parametrów? Oto moje rozwiązanie: używam …

7
Przeciwnie do polecenia `source`
Korzystam z sourcepolecenia w skrypcie bash, aby odczytać / wydrukować wartości zmiennych 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 Czym jest …


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.