Powłoka Korn (ksh) to powłoka z zaawansowanymi funkcjami skryptowymi, powszechnie spotykana w komercyjnych jednostkach i niektórych systemach BSD, ale rzadko używana w systemie Linux.
Właśnie otworzyłem starszy skrypt powłoki (napisany w starym ksh88 na Solarisie) i znalazłem następujące powtórzenia w całym kodzie: [ -f $myfile ] && \rm -f $myfile Uciekający ukośnik wydaje mi się dziwny. Wiem, że jest to celowe, ponieważ tego rodzaju (pozornie bezużyteczne) ucieczki powtarzają się w całym kodzie. Pierwotnego autora …
Zgodnie z moją wiedzą, aby określić bieżącą powłokę, której używamy echo $0w powłoce. Zamiast tego chcę, aby mój skrypt sprawdzał, w której powłoce jest uruchomiony. Więc próbowałem wydrukować $0w skrypcie i zwraca nazwę skryptu tak, jak powinien. Moje pytanie brzmi: w jaki sposób mogę znaleźć powłokę, w której działa mój …
Wyrażenie: $ ksh -c 'for ((i=0;i<10;i++)){ echo $i;}' 0 1 2 3 4 działa poprawnie. Nie mogę znaleźć opisu tej składni, w której {...;}zastępuje ; do ...; doneona instrukcję. Czy jest odniesienie w instrukcji? Dla których powłok to działa poprawnie?
Moim wymaganiem jest uzyskanie różnicy 2 znaczników czasu w godzinach. Ponieważ opcja porównywania daty długo mi zajmuje, staram się przekonwertować obie daty na format RRRRMMDDGGMMSS i znaleźć różnicę liczb. Więc muszę uzyskać bieżącą datę i godzinę w tym samym formacie.
Chciałem sformatować pliki Unix warunkowo, obecnie pracuję nad diffpoleceniem i chciałem wiedzieć, czy można sformatować tekst wyniku diffpolecenia. Przykład: Dopasowane wartości powinny być wyświetlane na zielono. Niedopasowane wartości powinny być wyświetlane na czerwono. Załóżmy, że mam dwa pliki file1i file2a moja komenda diff file1 file2. Teraz chciałem, aby założenie, że …
Spróbuj: $ a=0 $ let a++ $ echo $? 1 # Did the world just go mad? $ echo $a 1 # Yes, it did. $ let a++ $ echo $? 0 # We have normality. $ echo $a 2 Porównaj to z: $ b=0 $ let b+=1 $ echo …
Czy istnieje sposób na „ gnome-terminalprzekroczenie limitu czasu” powłoki roota (na przykład in ), aby po pewnym czasie nie wydawania żadnych poleceń powłoka została zamknięta? Szukam rozwiązania, które działa w bashFedorze i w kshOpenBSD.
W powłoce Bourne'a, która obsługuje zmienną tablicową, możemy użyć analizy składniowej, aby sprawdzić, czy zmienna jest tablicą. Wszystkie poniższe polecenia zostały uruchomione po uruchomieniu a=(1 2 3). zsh: $ declare -p a typeset -a a a=( 1 2 3 ) bash: $ declare -p a declare -a a='([0]="1" [1]="2" [2]="3")' …
Próbuję skopiować wszystkie pliki, które nie zaczynają się na literę „a”, w ksh. Kopiowanie z komputera źródłowego na komputer docelowy działa poprawnie : scp -p !(a*) user@machine:/path/directory/. Ale jeśli jestem na serwerze docelowym i chcę skopiować z serwera źródłowego, oznacza to, że: scp -p user@machine:/path/!(a*) . Jakieś pomysły?
Dany cmd='fun(){ echo "$@"; }; fun $(fun $(fun hi))' pociski zwykle wymagają wykonania 2 widelców, aby tak się stało strace-f(){ strace -f "$@" 2>&1; }; for sh in dash bash zsh ksh; do printf "$sh\t" ; strace-f $sh -c "$cmd" |grep -e clone -e fork -c; done z wyjątkiem kshheroicznie …
Jak mogę bezpiecznie pobrać wersję ksh ze skryptu ksh? Ja widziałem następujące rozwiązania : ksh --version echo ${.sh.version} echo $KSH_VERSION Biorąc pod uwagę odpowiednie okoliczności, każda z nich działa poprawnie. Dbam jednak o niedoskonały przypadek. W szczególności istnieje kilka maszyn, z którymi współpracuję, które mają starsze wersje ksh, które, moim …
Normalne polecenie tar tar cvf foo.tar ./foo >foo.out 2>foo.err ma trzy wyjściowe strumienie we / wy zarchiwizuj dane na foo.tar lista nazw plików do STDOUT (przekierowane do foo.out) komunikaty o błędach do STDERR (przekierowane do foo.err) Następnie mogę sprawdzić foo.err pod kątem komunikatów o błędach bez konieczności czytania listy nazw …
Konfigurowanie zadania crona raz w miesiącu w celu uruchomienia skryptu. Skrypt polega na obracaniu pliku co miesiąc, ponieważ staje się on zbyt duży i zmienia nazwę starego. gdy plik jest starszy niż sześć miesięcy, chciałem go usunąć. Chcę uruchomić ten skrypt raz w miesiącu. Czy to możliwe, aby usunąć stary? …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.