Pytania otagowane jako bash

W przypadku pytań dotyczących skryptów napisanych dla powłoki poleceń Bash. W przypadku skryptów powłoki z błędami / błędami składni sprawdź je za pomocą programu shellcheck (lub na internetowym serwerze shellcheck pod adresem https://shellcheck.net) przed opublikowaniem tutaj. Pytania dotyczące interaktywnego korzystania z Bash są bardziej prawdopodobne na Super User niż na Stack Overflow.


4
Jak w bash powiązać klawisz funkcyjny z poleceniem?
Przykład: Chcę przypisać F12klawisz do polecenia echo "foobar"tak, że za każdym razem, F12gdy trafię, na ekranie zostanie wyświetlony komunikat „foobar”. W idealnym przypadku mogłoby to być dowolne polecenie powłoki, a nie tylko polecenia wbudowane. Jak się do tego zabrać?
91 bash  shell  binding 

7
Wywołaj skrypt Pythona z basha z argumentem
Wiem, że mogę uruchomić skrypt w języku Python z mojego skryptu bash, używając następującego: python python_script.py Ale co jeśli chciałbym przekazać zmienną / argument do mojego skryptu Pythona z mojego skryptu bash. Jak mogę to zrobić? Zasadniczo bash opracuje nazwę pliku, a następnie Python go załaduje, ale muszę wysłać nazwę …
91 python  linux  bash  shell  debian 

7
Bash: przekazanie funkcji jako parametru
Muszę przekazać funkcję jako parametr w Bash. Na przykład następujący kod: function x() { echo "Hello world" } function around() { echo "before" eval $1 echo "after" } around x Powinien wynik: before Hello world after Wiem, że evalnie jest poprawne w tym kontekście, ale to tylko przykład :) Dowolny …

5
Jak uzyskać odczyt seda ze standardowego wejścia? [duplikować]
To pytanie ma już odpowiedzi tutaj : sed nieznana opcja `s 'w skrypcie bash [duplikat] (4 odpowiedzi) Zamknięte w zeszłym miesiącu . próbuję grep searchterm myfile.csv | sed 's/replaceme/withthis/g' i coraz unknown option to `s' Co ja robię źle? Edytować: Zgodnie z komentarzami kod jest faktycznie poprawny. Mój pełny kod …
91 linux  bash  shell 

13
Jak uruchomić polecenie terminala w skrypcie Swift? (np. xcodebuild)
Chcę zamienić moje skrypty bash CI na szybkie. Nie mogę dowiedzieć się, jak wywołać normalne polecenie terminala, takie jak lslubxcodebuild #!/usr/bin/env xcrun swift import Foundation // Works println("Test") // Works ls // Fails xcodebuild -workspace myApp.xcworkspace // Fails $ ./script.swift ./script.swift:5:1: error: use of unresolved identifier 'ls' ls // Fails …
91 swift  bash  shell  xcodebuild 


3
Linia poleceń Bash i limit wprowadzania
Czy istnieje jakiś limit znaków narzucony w bashu (lub innych powłokach) na jak długo może trwać wejście? Jeśli tak, jaki jest ten limit znaków? To znaczy czy można napisać polecenie w bash, które jest zbyt długie, aby wiersz poleceń mógł zostać wykonany? Jeśli nie ma wymaganego limitu, czy istnieje sugerowany …

8
Używanie kolorów z printf
Napisany w ten sposób wyświetla tekst na niebiesko: printf "\e[1;34mThis is a blue text.\e[0m" Ale chcę mieć format zdefiniowany w printf: printf '%-6s' "This is text" Teraz wypróbowałem kilka opcji dodawania koloru, bez powodzenia: printf '%-6s' "\e[1;34mThis is text\e[0m" Próbowałem nawet dodać kod atrybutu do formatu bez powodzenia. To nie …
90 linux  bash  colors  printf 

16
tar: dodaj wszystkie pliki i katalogi w bieżącym katalogu, W TYM .svn i tak dalej
Próbuję tar.gz katalog i używam tar -czf workspace.tar.gz * Wynikowy plik tar zawiera .svnkatalogi w podkatalogach, ale NIE w katalogu bieżącym (ponieważ *jest rozwijany tylko do 'widocznych' plików przed przekazaniem do tar Starałem się tar -czf workspace.tar.gz .zamiast tego pojawia się błąd, ponieważ „.” zmienił się podczas czytania: tar: ./workspace.tar.gz: …




2
Zamieszanie wokół $ {tablica [*]} w porównaniu z $ {tablica [@]} w kontekście zakończenia bash
Po raz pierwszy próbuję napisać zakończenie basha i jestem trochę zdezorientowany co do dwóch sposobów dereferencji tablic bash ( ${array[@]}i ${array[*]}). Oto odpowiedni fragment kodu (nawiasem mówiąc, działa, ale chciałbym to lepiej zrozumieć): _switch() { local cur perls local ROOT=${PERLBREW_ROOT:-$HOME/perl5/perlbrew} COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} perls=($ROOT/perls/perl-*) # remove all but the final part …

9
Jak wykonać wyjście polecenia w bieżącej powłoce?
Doskonale znam narzędzie source(aka .), które pobierze zawartość z pliku i uruchomi ją w bieżącej powłoce. Teraz przekształcam tekst w polecenia powłoki, a następnie uruchamiam je w następujący sposób: $ ls | sed ... | sh lsto tylko przypadkowy przykład, oryginalny tekst może być dowolny. sedtakże przykład przekształcania tekstu. Ciekawe …
89 bash  shell  unix  pipe 

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.