Potok Unix łączy deskryptory plików dwóch procesów. Potok jest tworzony za pomocą funkcji potoku POSIX zadeklarowanej w <unistd.h>. Powłoki umożliwiają tworzenie potoków między procesami za pomocą „|”.
Załóżmy, że mam plik binarny o nazwie foo. Jeśli chcę przekierować wyjście foodo jakiegoś innego procesu bar, mógłbym pisać ./foo | bar. Z drugiej strony, jeśli chciałem timefoo i przekierować wyjście z timeMógłbym pisać time (./foo) | bar. Moje pytanie brzmi: w jaki sposób mogę przykleić wyjście timedo końca fooi …
Chcę móc wyszukiwać pliki w ciągu 14 dni i powyżej 10 000, a następnie zsynchronizować znalezione pliki do miejsca docelowego. Czy istnieje sposób na połączenie tych dwóch poleceń? find ./ -mtime +14 -size +10k rsync --remove-sent-files -avz /src /dest
Mam kilka skryptów Pythona i pracuję nad ich napisaniem. Mam ten sam problem ze wszystkimi. Nie jest dla mnie oczywiste, jak pisać programy, aby działały jak właściwe narzędzia uniksowe. Ponieważ to $ cat characters | progname i to $ progname characters powinien generować ten sam wynik. Najbliższą rzeczą, jaką mogłem …
Zgodnie z „ Linux: The Complete Reference 6th Edition ” (str. 44), możesz przesyłać tylko STDERR za pomocą |&symboli przekierowania. Napisałem dość prosty skrypt, aby to przetestować: #!/bin/bash echo "Normal Text." echo "Error Text." >&2 Uruchamiam ten skrypt w następujący sposób: ./script.sh |& sed 's:^:\t:' Przypuszczalnie tylko wcięte zostaną linie …
Chcę wybrać z pliku niektóre wiersze zawierające dany numer. Plik, który chcę wyszukać, nazywa się os_clusters/piRNA_clusters.bed. awk '{if (a[$0]++ == 0) {split($0,b,"."); ;split(b[1],c,"r"); print c[3]}};' test_non_enriched | xargs grep {} os_clusters/piRNA_clusters.bed Pierwsza część, przed potokiem, działa - tworzy wyszukiwane hasła, takie jak 8707, 8824 itd. Jednak druga część nie. awk …
Właśnie uruchomiłem kilka poleceń w terminalu i zacząłem się zastanawiać, czy Unix / Linux używa skrótów podczas uruchamiania poleceń potokowych? Załóżmy na przykład, że mam plik zawierający milion wierszy, z których pierwsze 10 zawiera hello world. Jeśli uruchomisz polecenie, grep "hello world" file | headczy pierwsze polecenie zatrzyma się, gdy …
Jak mogę przepisać to polecenie na e-mail, tylko jeśli dane wyjściowe są wysyłane z mailq | grep? mailq | egrep 'rejected|refused' -A 5 -B 5 | mail -s 'dd' email@email Czy to w ogóle możliwe na jednej linii? Zobacz Sprawdzanie, czy potok jest pusty i uruchom polecenie na danych, jeśli …
Mam 200 GB wolnego miejsca na dysku, 16 GB pamięci RAM (z czego ~ 1 GB zajmuje komputer i jądro) oraz 6 GB wymiany. Mam zewnętrzny dysk SSD o pojemności 240 GB, z 70 GB wykorzystałem 1, a resztę bezpłatnie, i muszę wykonać kopię zapasową na dysku. Zwykle dd if=/dev/sdb …
To pytanie zostało przeniesione z usterki serwera, ponieważ można na nie odpowiedzieć w systemie wymiany stosów Unix i Linux. Migrował 2 lata temu . Jedną z metod łatwej instalacji dla Dockera (na przykład) jest: curl -sSL https://get.docker.com/ | sh Jednak widziałem również niektóre, które wyglądają tak (na przykładzie Docker): sh …
Nie rozumiem, jak przepływają dane w rurociągu, i mam nadzieję, że ktoś może wyjaśnić, co się tam dzieje. Myślałem, że potok poleceń przetwarza pliki (tekst, tablice ciągów) wiersz po wierszu. (Jeśli każde polecenie działa osobno wiersz po wierszu.) Każdy wiersz tekstu przechodzi przez potok, polecenia nie czekają, aż poprzednie zakończy …
Edycja: oryginalny tytuł brzmiał: „odczyt kończy się niepowodzeniem” W ksh używam read jako wygodnego sposobu na rozdzielanie wartości: $ echo 1 2 3 4 5 | read a b dump $ echo $b $a 2 1 $ Ale kończy się niepowodzeniem: $ echo 1 2 3 4 5 | read …
Miesiąc temu napisałem skrypt Pythona do mapowania adresów MAC i IP ze standardowego wejścia. Dwa dni temu zapamiętałem to i użyłem do filtrowania wyników, tcpdumpale poszło nie tak z powodu literówki. Wpisałem tcpdump -ne > ./mac_ip.py a wynik jest niczym. Ale dane wyjściowe powinny być „Nieznane”, jeśli nie można przeanalizować …
Kiedy używam less file1 file2, oba pliki są wyświetlane w „przeglądarce mniej buforów”, ale less file1 file2 | catdrukuje zawartość obu plików dołączonych do standardowego wyjścia. Skąd mniej wie, czy powinien wyświetlać „przeglądarkę mniej buforów” czy generować wyjście na standardowe wyjście dla następnego polecenia? Jaki mechanizm służy do tego?
O ile mi wiadomo, mogę użyć polecenia tee, aby podzielić standardowe wyjście na ekran i dalsze pliki: command -option1 -option2 argument | tee file1 file2 file3 Czy można przekierować dane wyjściowe do poleceń zamiast do plików za pomocą tee, aby teoretycznie stworzyć ciąg poleceń?
Po uruchomieniu lsotrzymuję kolorowe wydruki, które uważam za całkiem przydatne, aby szybko przejrzeć rodzaj pliku. Kiedy próbuję nadać mu kolor, lessnawet przy użyciu flag -ri, -Rkolorowanie zawsze się gubi. Używam zshwersji 5.0.7. Jakieś pomysły? Dzięki. edycja: korzystam z systemu OS X.
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.