Pytania otagowane jako shell-script

Pytania dotyczące skryptów powłoki, plików wykonywalnych interpretowanych przez powłokę (bash, zsh itp.).

3
Shebang zaczynający się od `//`?
Nie jestem pewien co do następującego skryptu ( hello.go). //usr/bin/env go run $0 $@ ; exit package main import "fmt" func main() { fmt.Printf("hello, world\n") } Można wykonać. (w MacOS X 10.9.5) $ chmod +x hello.go $ ./hello.go hello, world Od początku nie słyszałem o shebang //. I nadal działa, …

3
Zrozumienie „IFS = read -r line”
Rozumiem oczywiście, że można dodać wartość do zmiennej separatora pól wewnętrznych. Na przykład: $ IFS=blah $ echo "$IFS" blah $ Rozumiem również, że read -r linezapisze dane stdinw zmiennej o nazwie line: $ read -r line <<< blah $ echo "$line" blah $ Jak jednak polecenie może przypisać wartość zmiennej? …

12
Po co pisać cały skrypt bash w funkcjach?
W pracy często piszę skrypty bash. Mój przełożony zasugerował, aby cały skrypt był podzielony na funkcje, podobnie jak w poniższym przykładzie: #!/bin/bash # Configure variables declare_variables() { noun=geese count=three } # Announce something i_am_foo() { echo "I am foo" sleep 0.5 echo "hear me roar!" } # Tell a joke …

6
Różnica między ls-l a ll?
Jestem stosunkowo nowy w programowaniu jako całości, a niektóre samouczki mówią mi, żebym ls -lszukał plików w katalogu, a inni mówili ll. Wiem, że lsto krótka lista, ale czy istnieje różnica między pozostałymi dwoma?
59 shell  shell-script  ls 


4
Uzyskaj ścieżkę bieżącego skryptu po uruchomieniu za pomocą dowiązania symbolicznego
Mam narzędzie składające się z kilku katalogów z niektórymi skryptami bash i plikami pomocniczymi, które zostaną wdrożone na kilku komputerach, ewentualnie w innym katalogu na każdym komputerze. Skrypty muszą mieć możliwość odwoływania się do ścieżek względem siebie, więc muszę mieć możliwość uzyskania ścieżki do aktualnie wykonywanego pliku. Zdaję sobie sprawę …




10
bash: sprawdź, czy $ WORD jest ustawiony
Szukam konstrukcji w bash, aby zdecydować, czy zmienna $WORDjest jednym ze zdefiniowanych słów. Potrzebuję czegoś takiego: if "$WORD" in dog cat horse ; then echo yes else echo no fi czy bash ma taką konstrukcję? Jeśli nie, co byłoby najbliższe?


6
Łączenie dwóch zmiennych ze znakiem podkreślenia
Muszę połączyć dwie zmienne, aby utworzyć nazwę pliku z podkreśleniem. Wywołuje moje zmienne $FILENAMEi $EXTENSIONgdzie nazwa pliku jest odczytywana z pliku. FILENAME=Hello EXTENSION=WORLD.txt Teraz... Próbowałem następujących bez powodzenia: NAME=${FILENAME}_$EXTENSION NAME=${FILENAME}'_'$EXTENSION NAME=$FILENAME\\_$EXTENSION Zawsze otrzymuję coś dziwnego. Zwykle podkreślenie jest pierwsze. Muszę tak być echo $NAME Hello_WORLD.txt


3
Jak mogę „wyeksportować” zmienne środowiskowe w skrypcie powłoki?
Mam wiele kont Amazon EC2 i chcę szybko móc zmieniać zmienne, na przykład za $EC2_HOMEpomocą skryptu. Mam skonfigurowany skrypt powłoki w ten sposób: #!/bin/sh export EC2_HOME=/home/me/.ec2 echo $EC2_HOME Kiedy uruchamiam skrypt, wiem, że EC2_HOMEjest ustawiony, ale pomyślałem, że użycie exportspowoduje, że zmienna pozostanie po zakończeniu skryptu. Nie działa, ponieważ bieganie …


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.