Pytania otagowane jako shell-script

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

7
Przeciwnie do polecenia `source`
Korzystam z sourcepolecenia w skrypcie bash, aby odczytać / wydrukować wartości zmiennych more linuxmachines_mount_point.txt export linuxmachine01="sdb sdc sdf sdd sde sdg" export linuxmachine02="sde sdd sdb sdf sdc" export linuxmachine03="sdb sdd sdc sde sdf" export linuxmachine06="sdb sde sdf sdd" source linuxmachines_mount_point.txt echo $linuxmachine01 sdb sdc sdf sdd sde sdg Czym jest …

4
Jak przenieść i odtworzyć folder jednocześnie?
Mam folder o nazwie statisticsna serwerze Ubuntu, w którym pliki danych są regularnie przechowywane. Jak mogę zmienić nazwę statisticsfolderu na backup-xxpodczas ponownego tworzenia statisticsfolderu, aby był dostępny do przechowywania nowych plików? Pliki w statisticsfolderze są tworzone przez PHP file_put_contents. Wolę zmienić nazwę folderu, ponieważ w folderze znajduje się wiele plików …

4
Czy skrypt powłoki może wydrukować swój argument cytowany tak, jak napisałbyś go w wierszu poleceń powłoki?
W skrypcie powłoki rozumiem, że "$@"rozszerzam się na argumenty skryptu, cytując je w razie potrzeby. Na przykład przekazuje argumenty skryptu do gcc: gcc -fPIC "$@" <<<Jednak podczas korzystania ze składni bash pass-to-stdin "@$"nie działa tak, jak bym tego oczekiwał. #!/bin/bash cat <<< "$@" Wywołanie skryptu jako ./test.sh foo "bar baz"daje …


5
Znajdź ostatnie wystąpienie ciągu w wielu plikach
Muszę przeszukać wiele plików dziennika (wszystkie pliki wygenerowane w ciągu ostatnich 24 godzin, wszystkie przechowywane w tym samym katalogu), aby znaleźć ostatnie wystąpienie ciągu. Oto polecenie, które napisałem: find . -mtime 1 | grep fileprefix | xargs grep 'search string' | tail -1 Ale to zwraca tylko ostatnią linię dla …



2
Dlaczego printf wypisuje więcej argumentów niż oczekiwano?
Dlaczego dane wejściowe tego skryptu powłoki są drukowane dwukrotnie? Spodziewałem się, że skrypt zignoruje dane wejściowe po 5. Scenariusz: #! /bin/bash echo "Enter 5 words : " read a b c d e printf "> %s %s %s %s %s <" $a $b $c $d $e Wynik: user@linux:~$ pico ifs2.sh …

4
Przenieś pliki według daty do innego katalogu za pomocą CLI
Mam dużą liczbę zdjęć ze starego dysku twardego, który próbuję uporządkować. Jeśli uruchomię ls -l, zauważę , że wszystkie te pliki mają datę utworzenia 2012 lub wcześniejszą. Idealnie chciałbym przenieść je na drugi dysk twardy mojego komputera, który nie jest ustawiony do automatycznego montowania. Najlepiej, gdybym mógł to wszystko zrobić …

2
Jak wydrukować tylko nazwę skryptu?
[username@notebook ~]$ cat foo.sh #!/bin/bash echo "$0" [username@notebook ~]$ ./foo.sh ./foo.sh [username@notebook ~]$ Pytanie : Jak mogę wygenerować plik „foo.sh”? Bez względu na to, jak zostało wykonane.

2
Polecenie / skrypt powłoki, aby sprawdzić, czy host żyje?
Próbuję znaleźć więcej sposobów, aby sprawdzić, czy dany host działa, używając wyłącznie poleceń powłoki (głównie bash). Idealnie byłoby w stanie pracować zarówno z nazwami hostów, jak i adresami IP. W tej chwili jedynym znanym mi rodzimym sposobem jest ping, być może zintegrowany ze skryptem, jak opisano tutaj. Jakieś inne pomysły?

5
sudo w nieinteraktywnym skrypcie
Mam skrypt, który wykonuje trzy funkcje: A && B && C. Funkcja Bmusi być uruchomiony jako super-użytkownika, podczas Ai Cnie. Mam kilka rozwiązań, ale żadne z nich nie jest satysfakcjonujące: sudo cały skrypt: sudo 'A && B && C' To wydaje się złym pomysłem do uruchomienia Ai Cjako superużytkownik, jeśli …


8
Grep dla wzoru na początku lub na środku linii
Zacznę od stwierdzenia, że ​​uważam, że ten problem jest nieco mniej niewinny niż się wydaje. Co muszę zrobić: sprawdź folder w zmiennej środowiskowej PATH. Może być na początku lub gdzieś później. Muszę tylko sprawdzić, czy ten folder tam jest. Przykład mojego problemu - użyjmy /opt/gnome. SCENARIUSZ 1: folder nie znajduje …

3
Dash odpowiednik samokierowania wyjścia skryptu
W Bash możesz przekierować wszystkie przyszłe standardowe wyjścia aktualnie uruchomionego skryptu. Na przykład za pomocą tego skryptu exec > >(logger -t my-awesome-script) echo 1 echo 2 echo 3 To skończy się w syslog: Oct 26 01:03:16 mybox my-awesome-script[72754]: 1 Oct 26 01:03:16 mybox my-awesome-script[72754]: 2 Oct 26 01:03:16 mybox my-awesome-script[72754]: …

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.