Pytania otagowane jako bash-scripting

Skrypty Bash tworzą skrypty w języku powłoki Bash.


8
Pomijać śledzenie wykonania dla polecenia echo?
Używam skryptów powłoki od Jenkins, które uruchamiają skrypty powłoki z opcjami shebang #!/bin/sh -ex. Według Bash Shebang dla manekinów? , -x„powoduje, że powłoka drukuje ślad wykonania”, co jest świetne w większości celów - z wyjątkiem ech: echo "Message" produkuje dane wyjściowe + echo "Message" Message co jest trochę zbędne i …

3
Jak zaktualizować bash na Mac OS X Yosemite
Po prostu próbuję nauczyć się trochę skryptów bash. Moja stara wersja bash: Bash version 3.2.53(1)-release... Zaktualizowałem moją wersję bash na Mac OS X Yosemite z Homebrew: brew update brew install bash Następnie we właściwościach terminala zmieniłem standardową ścieżkę powłoki z /bin/bashna /usr/local/bin/bash(rozumiem, że tutaj homebrew instaluje zaktualizowaną wersję bash). Następnie …



1
Bash: opcjonalnie przekazanie argumentów do polecenia
Próbuję dodać argumenty do wywołania polecenia zależne od innej zmiennej. Proszę spojrzeć na kod skryptu powłoki: curl \ $([ -z "${title}" ] || echo --data-urlencode title=${title}) \ http://example.com W tym przykładzie, jeśli nie titlezostanie podany null, zostanie dodany argument curl. To nie działa poprawnie, jeśli titlezawiera spacje. Również nie mogłem …


2
Pisanie skryptów powłoki, które będą działać na dowolnej powłoce (używając wielu linii shebang?)
Właśnie zacząłem zagłębiać się w skrypty powłoki i zawsze po prostu wrzucałem swój skrypt do pliku, zaznaczałem go, chmod +xa następnie robiłem /path/to/script.shi pozwalałem, aby dowolny interpreter był domyślny, co założyłem, że to zsh, ponieważ to właśnie Użyłem mojej muszli. Najwyraźniej wydaje się, że jest to /bin/shdomyślnie, nawet jeśli wykonuję …


2
Prefiks do każdego wyjścia polecenia w czasie wykonywania
Próbuję stworzyć modułowy skrypt. Mam kilka skryptów / poleceń, które są wywoływane z jednego skryptu. Chcę prefiksować dane wyjściowe każdego oddzielnego polecenia. Przykład: Moje pliki to allcommands.sh / command1.sh / command2.sh command1.sh wyjścia file exists file moved command2.sh wyjścia file copied file emptied allcommands.sh uruchamia skrypty command1.sh i command2.sh Chcę …


2
Prawidłowe unikanie ukośnika w skrypcie bash do użycia z sed
Próbuję określić rozmiar plików, które zostaną nowo skopiowane podczas synchronizacji dwóch folderów, uruchamiając rsync w trybie suchym, a następnie sumując rozmiary plików wymienionych na wyjściu rsync. Obecnie utknąłem przy prefiksowaniu plików według ich folderu nadrzędnego. Dowiedziałem się, jak prefiksować linie za pomocą sed i jak uciec za pomocą sed, ale …

1
Jak zmienić identyfikator użytkownika / chage w skrypcie bash, aby wykonywać polecenia w tym samym skrypcie?
Czy istnieje sposób na zmianę tożsamości użytkownika w skrypcie (wykonywanym jako root w ramach procesu instalacji) w celu wykonania niektórych poleceń bez wywoływania zewnętrznego skryptu, a następnie powrotu rootdo uruchomienia innych poleceń? Raczej: #!/bin/bash some commands as root SWITCH_USER_TO user some commands as user including environment variables checks, without calling …

5
Jak obciąć plik wierszami?
Mam dużą liczbę plików, z których niektóre są bardzo długie. Chciałbym je przyciąć do określonego rozmiaru, jeśli są większe, usuwając koniec pliku. Ale chcę tylko usunąć całe linie. W jaki sposób mogę to zrobić? To wydaje się być czymś, co poradziłby sobie system narzędziowy Linuksa, ale nie znam właściwego polecenia. …

2
zakończenie bash dla wzorców nazw plików lub katalogów
Próbuję skonfigurować skrypt kończący bash i mam problemy. Chciałbym to skonfigurować, aby wymienione uzupełnienia były albo plikami pasującymi do określonego rozszerzenia, albo katalogami (które mogą, ale nie muszą zawierać pliki tego rozszerzenia). Problem, który mam, polega na tym, że jedynym sposobem, w jaki mogę uzyskać uzupełnienia zawierające pliki i katalogi, …

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.