Pytania otagowane jako shell

Powłoka jest interfejsem wiersza poleceń Uniksa. Możesz pisać polecenia w powłoce interaktywnie lub pisać skrypty automatyzujące zadania. Użyj tego znacznika do pytań dotyczących / bin / sh i najbardziej kompatybilnych powłok (ash, bash, ksh, zsh,…). Skrypty powłoki z błędami sprawdź je w http://shellcheck.net przed opublikowaniem tutaj.

2
Dlaczego użycie „tak” na potokach bash * nie * powoduje nieskończonych pętli?
Zgodnie z jego dokumentacją, bash czeka, aż wszystkie polecenia w potoku zakończą działanie, zanim przejdzie dalej Powłoka czeka na zakończenie wszystkich poleceń w potoku przed zwróceniem wartości. Dlaczego więc polecenie yes | truekończy się natychmiast? Czy yespętla nie powinna być wieczna i spowodować, że rurociąg nigdy nie powróci? I podpytanie: …
16 bash  shell  pipe 

1
Jaka jest magia, która pozwala mi uzupełniać tabulatorami zdalne pliki po wpisaniu polecenia scp?
Prawdopodobnie jest to funkcja zapewniana przez niektóre wtyczki, które włączyłem w mojej konfiguracji oh-my-zsh (używam zsh od wielu lat). Zauważyłem, odkąd dodałem mój klucz publiczny do serwera (teraz mogę SSH na serwerze bez wpisywania hasła), kiedy piszę scppolecenie w mojej powłoce, jestem w stanie uzupełnić tabulatory zdalnymi ścieżkami plików! na …

3
Czy jest jakiś powód, aby używać lub uczyć zastępowania „…” nowym opracowaniem?
Rozumiem, że bardziej nowoczesna $(...)składnia zastępowania poleceń jest lepsza niż `składnia oparta na starej , ze względu na łatwiejsze i mniej podatne na błędy zagnieżdżanie i unikanie składni. Ponadto wydaje się, że większość /bin/shstylów w nowoczesnych powłokach obsługuje $(…): grzmotnąć ash (a zatem BusyBox, więc najbardziej osadzony Linux) dziarskość FreeBSD …


1
Procent zmiennej środowiskowej $ PATH
Moja $ PATH wygląda następująco: /home/torbjorr/deployed/vector/x86_64-GNU%2fLinux:/home/torbjorr/deployed/typewriter/x86_64-GNU%2fLinux:/home/torbjorr/deployed/mustudio/x86_64-GNU%2fLinux:/home/torbjorr/deployed/mathext/x86_64-GNU%2fLinux:/home/torbjorr/deployed/doxymax/x86_64-GNU%2fLinux:/home/torbjorr/deployed/c2tex/x86_64-GNU%2fLinux:/home/torbjorr/deployed/x86_64-GNU%2fLinux/wand:/home/torbjorr/deployed/x86_64-GNU%2fLinux/spellesc:/home/torbjorr/deployed/x86_64-GNU%2fLinux/projinit:/home/torbjorr/deployed/x86_64-GNU%2fLinux/herbs:/home/torbjorr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games W bashu mogę bez problemu wywołać różdżkę znajdującą się w /home/torbjorr/deployed/x86_64-GNU%2fLinux/wand lubić $ wand (i) Mål från "main.cpp" har registrerats (i) Skapar katalog "__wand_targets_dbg" (i) Kör g++ "main.cpp" -fpic -L"/home/torbjorr/deployed" -g -Wall -std=c++11 -I"/home/torbjorr/deployed" -o "__wand_targets_dbg/cb-template Jednak w trybie zgodności z powłoką Bourne'a nie …
16 shell  path  dash  ash 

2
Praktyczne użycie opcji `set -k` w bash
Kiedy używamy set -kopcji w bash? Podręcznik referencyjny Bash mówi: Wszystkie argumenty w postaci instrukcji przypisania są umieszczane w środowisku dla polecenia, nie tylko te poprzedzające nazwę polecenia. Rozumiem, co robi ta opcja, ale nie mogłem sobie wyobrazić, kiedy jej potrzebujemy.
16 bash  shell 

2
Nie można rozwinąć gwiazdki bez odpowiedniego pozwolenia
Czy ktoś może mi wyjaśnić, co następuje? $ ls -ld /temp/sit/build/ dr-xr-s--- 3 asdf qwer 4096 Jan 31 2012 /temp/sit/build/ $ ls -ld /temp/sit/build/* ls: /temp/sit/build/*: Permission denied Tak więc przyuczeni nie mogę tutaj użyć gwiazdki. Wypróbowałem to z poleceniem sudo i pojawia się błąd „brak takiego pliku” zamiast „odmowa …

2
Co oznacza przekierowanie za pomocą> | robić?
Kiedy należy użyć >|do przekierowania wyjścia do pliku zamiast po prostu >? Wyjaśnienie podane, gdy mi pokazano, było takie, że gwarantowało to, że plik docelowy został najpierw obcięty. Ale myślałem, że >już to sugerowało. Jest >|użyteczny?

5
Używanie wygenerowanej listy nazw plików jako listy argumentów - ze spacjami
Próbuję wywołać skrypt z listą nazw plików zebranych przez find. Nic specjalnego, po prostu coś takiego: $ myscript `find . -name something.txt` Problem polega na tym, że niektóre ścieżki zawierają spacje, więc przy interpretacji argumentów dzielą się one na dwie nieprawidłowe nazwy. Zazwyczaj otaczałbym te nazwiska cudzysłowami, ale tutaj są …



2
Równoległe wykonywanie poleceń potokowych
Rozważ następujący scenariusz. Mam dwa programy A i B. Program A wyprowadza na standardowe linie ciągów, a program B na linie standardowe ze standardowego wejścia. Oczywiście sposobem na użycie tych dwóch programów jest: foo @ bar: ~ $ A | b Teraz zauważyłem, że zjada to tylko jeden rdzeń; stąd …

3
Zakończenie skryptu powłoki bash działającego w tle
Często używam bashskryptów powłoki do uruchamiania prostych poleceń dla wielu różnych plików. Na przykład załóżmy, że mam następujący bashskrypt o nazwie script.sh, która uruchamia program / komendę foona trzy pliki tekstowe "a.txt", "b.txt", "c.txt": #!/bin/bash for strname in "a" "b" "c" do foo $strname".txt" done Załóżmy również, że foo $strname".txt"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.