Jak sprawdzić, czy $*jest pusty? Innymi słowy, jak sprawdzić, czy nie podano argumentów dla
Jak sprawdzić, czy $*jest pusty? Innymi słowy, jak sprawdzić, czy nie podano argumentów dla
W przypadku skryptu bash mogę uzyskać "$@"dostęp do argumentów. Jaki jest odpowiednik, gdy używam
Powiedzmy, że kiedy wykonam polecenie ls, wynikiem jest: file1 file2 file3 file4 Czy można wyświetlić tylko określoną kolumnę wyników, w tym przypadku plik2? Próbowałem następujących bezskutecznie: echo ls | $2 Zasadniczo wszystko, co chcę zrobić, to echo tylko drugiej kolumny, w tym przypadku...
Mam tablicę „opcji” polecenia. my_array=(option1 option2 option3) Chcę wywołać to polecenie w skrypcie bash, używając wartości z tablicy jako opcji. Tak więc command $(some magic here with my_array) "$1"staje się: command -option1 -option2 -option3 "$1" Jak mogę to zrobić? Czy to...
Myślałem, że to będzie proste - ale okazuje się bardziej złożone niż się spodziewałem. Chcę iterować wszystkie pliki określonego typu w katalogu, więc piszę: #!/bin/bash for fname in *.zip ; do echo current file is ${fname} done Działa to tak długo, jak w katalogu jest co najmniej jeden...
Jestem dość zdezorientowany co do następujących wyrażeń regularnych znalezionych w skrypcie powłoki: ${0##*/} ${0%/*} Jak oni
Obserwuję dziwne zachowanie podczas używania set -e( errexit), set -u( nounset) wraz z pułapkami ERR i EXIT. Wydają się powiązane, więc postawienie ich w jednym pytaniu wydaje się rozsądne. 1) set -unie uruchamia pułapek ERR Kod: #!/bin/bash trap 'echo "ERR (rc: $?)"' ERR set -u echo...
W wierszu poleceń często używam „prostych” poleceń, takich jak mv foo/bar baz/bar ale nie wiem, jak nazwać wszystkie części tego: ┌1┐ ┌──2───┐ git checkout master │ └──────3──────┘ └───────4─────────┘ Wiem (chyba) wiem, że 1 to polecenie, a 2 to argument, i prawdopodobnie nazwałbym 3...
Jak mogę uzyskać kawałek $@Basha bez konieczności kopiowania wszystkich parametrów pozycyjnych do innej tablicy, takiej jak ta? argv=( "$@" ) echo
Zgodnie z dokumentacją użycie vga=parametru jądra jest przestarzałe od GRUB2. Fakt, że niektóre nowsze jądra nie obsługują go już na niektórych kartach, nie ma znaczenia, ponieważ posiadana karta graficzna ma od siedmiu do ośmiu lat. Problem polega na tym, że chciałbym użyć trybu tekstowego o...
Próbuję utworzyć metodę funkcji w skrypcie bash, który wykonuje polecenie dostarczone do metody przez parametry. Czyli coś takiego: special_execute() { # Some code # Here's the point where the command gets executed $@ # More code } special_execute echo "abc" Próbowałem już I $@, "$@",...
Co oznacza wyjście echo $-1, echo $-2, echo $-3.. znaczy? Na jednym z moich Linux-ów pokazuje: echo $-1 imsBEl1 echo $-2 imsBEl2 A na innym Linux-ie pokazuje: echo $-1 himBH1 echo $-2 himBH2 Czy są one mapowane na niektóre lokalizacje pamięci lub coś
Chciałbym napisać funkcję, którą mogę wywołać ze skryptu z wieloma różnymi zmiennymi. Z niektórych powodów mam z tym wiele problemów. Przykłady, które czytałem, zawsze używają po prostu zmiennej globalnej, ale to nie uczyniłoby mojego kodu o wiele bardziej czytelnym, o ile widzę. Przykład...
To pytanie jest całkowicie ogólne i dotyczy nie tylko mojej sytuacji, ale ... Mam małe urządzenie busybox, w którym chcę, aby użytkownik inny niż root mógł wykonać określony skrypt z uprawnieniami administratora. Na przykład coś takiego jak ten mały skrypt do włączenia DHCP, gdzie jedyną zmienną (...
Na przykład, jeśli mam skrypt ./foo, który pobiera 10 parametrów, a chcę przekazać tylko 8 parametr. Jedyny sposób, w jaki wiem, jak to zrobić obecnie, to: ./foo '' '' '' '' '' '' '' 'bar' Czy istnieje łatwiejszy / lepszy
Trochę utknąłem. Moim zadaniem jest wydrukowanie argumentów na skrypcie w odwrotnej kolejności, z wyjątkiem trzeciej i czwartej. Mam ten kod: #!/bin/bash i=$# for arg in "$@" do case $i in 3) ;; 4) ;; *) eval echo "$i. Parameter: \$$i";; esac i=`expr $i - 1` done Ponieważ nienawidzę eval...
Mam funkcję szybkiego tworzenia nowej gałęzi SVN, która tak wygląda function svcp() { svn copy "repoaddress/branch/$1.0.x" "repoaddress/branch/dev/$2" -m "dev branch for $2"; } Którego używam, aby szybko utworzyć nowy oddział bez konieczności wyszukiwania i kopiowania, wklej adresy i inne rzeczy....
Czy można odwoływać się do indeksów w $@? Nie mogę znaleźć żadnego odniesienia do użycia, takiego jak nigdzie indziej w wiki GrayCata , a Advanced Scripting Guide i inni przypisują to do innej zmiennej przed jej zmodyfikowaniem. $ echo ${@[0]} -bash: ${@[0]}: bad substitution Celem jest OSUSZANIE...
Krótkie wyjaśnienie pytania: Czy istnieje wbudowana metoda bash zliczająca liczbę elementów w tablicy bash, w której nazwa tablicy jest dynamiczna (tj. Przechowywana w zmiennej), bez uciekania się do wykonania pełnej kopii tablicy lub użycia eval? Więcej informacji: Używając podstawiania...
Próbuję utworzyć alias bash, w którym sam alias ma spację. Chodzi o to, że alias (tj. con) Oznacza sudo openvpn --config /path/to/my/openvpn/configs/. Które skutkuje czytelnym poleceniem, gdy conużywany jest alias. to znaczy: `con uk.conf` == `sudo openvpn --config