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
Poprawne znaki nazwy funkcji powłoki
Korzystanie z rozszerzonych znaków Unicode jest (bez wątpienia) przydatne dla wielu użytkowników. Prostsze powłoki (ash (busybox), myślnik) i ksh nie działają z: tést() { echo 34; } tést Ale bash , mksh , lksh i zsh wydają się na to pozwalać. Wiem, że prawidłowe nazwy funkcji POSIX używają tej definicji …
13 bash  shell  zsh  function 

2
Wyklucz jeden katalog we wzorcu zgodnym z `ls`
Próbuję lskatalogów, które zawierają .pngpliki (nie ma potrzeby rekurencyjności, choć byłoby to bardzo przydatne), z wyjątkiem jednego. Wyklucz jeden katalog, tj ls */*.png działa w porządku. ls (^one)*/*.png nie zwraca stdout. Jak to osiągnąć? Jestem ślepy i podchodzę do niego espeak, więc na razie słyszę tylko standardowe wyjście.
13 shell  ls  wildcards 

2
Dlaczego nie mogę załadować modułów podczas wykonywania skryptu bash, ale tylko podczas jego pobierania?
Używam modułów do kontrolowania pakietów w moim systemie i python/2.7.2zainstalowałem jako moduł. Mam prosty plik wykonywalny Pythona, python_exe.pyktóry zamierzam wywołać z prostego skryptu „sterującego” runit.sh. runit.shskrypt wygląda mniej więcej tak: #!/bin/bash module load python/2.7.2 arg1=myarg1 arg2=15 arg3=$5 /path/to/python_exe.py -a $arg1 -b $arg2 -c $arg3 Jakkolwiek, kiedy właśnie uruchamiam ./runit.sh, sprzedaje …
13 bash  shell  python 

2
Jak korzystać z getopt w linii poleceń bash z tylko długimi opcjami?
W getoptlinii poleceń bash znajduje się polecenie. getoptmoże być używany z krótkimi opcjami (np. getopt -o axby "$@") i może być używany zarówno z krótkimi, jak i długimi opcjami (np. getopt -o axby -l long-key -- "$@"), ale teraz potrzebuję tylko długich opcji (tj. krótkie opcje w ogóle nie istnieją), …
13 shell  command 

6
Co to jest odwrotność echa -e?
Jeśli mam ciąg znaków z niedrukowalnymi znakami, nowymi wierszami lub tabulatorami, czy istnieje sposób echona wydrukowanie tego ciągu i pokazanie kodów dla tych znaków (np. \nDla nowego wiersza, \bdla backspace)?
13 shell  echo 

5
Jak złapać błąd w skrypcie bash linux?
Zrobiłem następujący skrypt: # !/bin/bash # OUTPUT-COLORING red='\e[0;31m' green='\e[0;32m' NC='\e[0m' # No Color # FUNCTIONS # directoryExists - Does the directory exist? function directoryExists { cd $1 if [ $? = 0 ] then echo -e "${green}$1${NC}" else echo -e "${red}$1${NC}" fi } # EXE directoryExists "~/foobar" directoryExists "/www/html/drupal" Skrypt …

4
Czy to literówka w sekcji przekierowań instrukcji Bash?
Note that the order of redirections is significant. For example, the command ls > dirlist 2>&1 directs both standard output and standard error to the file dirlist, while the command ls 2>&1 > dirlist directs only the standard output to file dirlist, because the standard error was duplicated from the …

5
Uruchom ponownie to samo polecenie z innym parametrem
Wiem, że mogę uruchomić następujące polecenie ls Some{File,Folder} Jest to równoważne z uruchomieniem tego: ls SomeFile SomeFolder (Często używam tego do takich rzeczy mv place_{a,b}) Zastanawiałem się jednak, czy istnieje inny skrót, w którym mógłbym zrobić coś takiego: run-command --a --whole --lot --of --flags parameter a; \ run-command --a --whole …

8
Dlaczego w terminalu rozróżniana jest wielkość liter?
Kiedy to robię - CD ..zamiast cd .. tego daje mi błąd mówiąc - CD: command not found Dlaczego w terminalach rozróżniana jest wielkość liter, jeśli chodzi o polecenia systemu Linux? Mam na myśli, że powinieneś być w stanie wykonać polecenie albo ze znakami „wszystkie wielkie litery” albo „wszystkie małe …

2
Interaktywne usuwanie plików z listy
Chciałbym usunąć listę plików i zostać poproszony o potwierdzenie. Lista znajduje się w list.txtpliku. Dlaczego poniższe polecenie nie działa poprawnie? while read i; do rm -i $i; done < list.txt Poprzednie polecenie nie czeka na mnie, ale na szczęście żaden plik nie jest usuwany. Używam Bash.

1
netcat w skrypcie powłoki, podając nieprawidłowe połączenie
Mam skrypt powłoki, który używa netcatdo nasłuchiwania localhostna porcie 1111 dla żądań internetowych. Za każdym razem, gdy próbuję uzyskać dostęp localhost:1111/index.html, otrzymuję: invalid connection to [127.0.0.1] from localhost [127.0.0.1] 60038 liczba na końcu (60038) wydaje się zwiększać za każdym razem, gdy uzyskuję dostęp localhost. Wszelkie sugestie dotyczące tego, co się …

6
Usuń puste drzewa katalogów (usuwając możliwie jak najwięcej katalogów, ale bez plików)
Załóżmy, że mam takie drzewo katalogów: ROOTDIR └--SUBDIR1 └----SUBDIR2 └----SUBDIR3 Szukam polecenia takiego, że kiedy wprowadzę: $ [unknown command] ROOTDIR Całe drzewo katalogów można usunąć, jeśli nie ma pliku, ale tylko katalogi wewnątrz całego drzewa . Powiedzmy jednak, że w pliku SUBDIR1 znajduje się plik hello.pdf: ROOTDIR └--SUBDIR1 └--hello.pdf └----SUBDIR2 …
13 shell  directory  rm 


2
Przesyłanie danych wyjściowych z programu segfault
Mam skrypt, który wywołuje program (w szczególności ttf2afmczęść tetex 3.0), który czasami segfuje, a czasem nie. Informacje, których potrzebuję, są zawsze drukowane, zanim ulegną segregacji, ale trudno mi jest powstrzymać przekierowanie potoku przed awarią i nie wysyłać niczego do potoku, gdy program zawiedzie. Próbowałem przekierować przez FIFO, nawiasować proces za …

1
Nieszczelne deskryptory plików
Co to znaczy, że wyciek deskryptora pliku File descriptor 6 (socket:[901758]) leaked on lvextend invocation. Parent PID 10035: /bin/zsh File descriptor 9 (/dev/pts/1) leaked on lvextend invocation. Parent PID 10035: /bin/zsh File descriptor 11 (/dev/pts/1) leaked on lvextend invocation. Parent PID 10035: /bin/zsh File descriptor 12 (/dev/pts/1) leaked on lvextend …
13 shell  lvm 

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.