Pytania otagowane jako file-descriptors

2
Jaka jest żywotność deskryptora pliku?
Jak opisano tutaj , przekierowania służą open()do zapisu do pliku. W powłoce utworzono wewnętrzny (?) Deskryptor pliku, który jest używany w razie potrzeby. Czy wewnętrzny deskryptor jest tworzony przez cały czas trwania skryptu lub czas życia powłoki? Czy po pewnym czasie ulegnie zniszczeniu, wielu operacjom itp.? Mam na myśli w …

2
Jaka jest różnica między & 6 i / dev / fd / 6?
Aby odczytać z deskryptora pliku 6, mogę użyć <&6lub </dev/fd/6(aka /proc/self/fd/6). Zwykle oba działają równie dobrze. Jednak jeśli deskryptorem pliku jest gniazdo, zdarzają się dziwne rzeczy. Na przykład: $ bash -c 'ls -l /dev/fd/6;cat /dev/fd/6' 6</dev/tcp/localhost/12345 lrwx------ 1 michas michas 64 Jan 10 19:50 /dev/fd/6 -> socket:[315010] cat: /dev/fd/6: No …

4
Przekierowanie wyjścia programu
Kiedy próbujesz przekierować wyjście programu za pomocą składni „jakaś liczba większa niż” (np. foo 2> myfile), Jakie są tutaj możliwe liczby i co one reprezentują? Wierzę, że 1 to /dev/stdout2 to /dev/stderr. Co z 5 i 6? Czy jest 3, 4 lub jakaś liczba większa niż 6?

2
stderr ponad ssh -t
To wysyła dane wyjściowe do STDERR, ale nie propaguje Ctrl+ C(tzn. Ctrl+ CZabije, sshale nie zdalny sleep): $ ssh localhost 'sleep 100;echo foo ">&2"' To propaguje Ctrl+ C(tzn. Ctrl+ CZabije sshi zdalnie sleep), ale wysyła STDERR do STDOUT: $ ssh -tt localhost 'sleep 100;echo foo ">&2"' Jak mogę zmusić sekundę …


2
Dlaczego podstawienie procesu <() nie działa z ssh -F
Mam jakieś wirtualne maszyny wirtualne. Aby się do nich zalogować, wydaje vagrant sshpolecenie. Chcę się do nich zalogować za pomocą zwykłego sshpolecenia. vagrant ssh-configWysyła odpowiedni plik konfiguracyjny $ vagrant ssh-config Host default HostName 127.0.0.1 User vagrant Port 2201 UserKnownHostsFile /dev/null StrictHostKeyChecking no PasswordAuthentication no IdentityFile /home/cbliard/.vagrant.d/insecure_private_key IdentitiesOnly yes LogLevel FATAL …


3
Nazwane potoki, deskryptory plików i EOF
Dwa okna, ten sam użytkownik, z monitami bash. W oknie typu 1: $ mkfifo f; exec &lt;f Więc bash próbuje teraz odczytać z deskryptora pliku 0, który jest odwzorowany na nazwany potok f. W oknie typu 2: $ echo ls &gt; f Teraz okno-1 wypisuje ls, a następnie powłoka umiera. …

1
OS X, bash: mniej działa na otwartych deskryptorach plików, cat nie
W skrypcie bash, nad którym pracuję (który musi działać na Ubuntu i OS X), muszę przekierować wyjście setek poleceń do pliku. Zamiast dołączać &amp;&gt;...do nich wszystkich, po prostu robię exec 9&gt;&amp;1 exec 5&lt;&gt;/tmp/some-file.txt exec 1&gt;&amp;5 Jak dotąd tak dobrze, ale w połowie tych wszystkich poleceń muszę przeczytać wszystko, co zostało …

4
Dlaczego nie mogę `tail -f / proc / $ pid / fd / 1`?
Napisałem prosty skrypt, który jest echojego PID: #/bin/bash while true; do echo $$; sleep 0.5; done Korzystam ze wspomnianego skryptu (mówi 3844wielokrotnie) w jednym terminalu i próbuję znaleźć taildeskryptor pliku w innym: $ tail -f /proc/3844/fd/1 Nie drukuje niczego na ekranie i zawiesza się do ^c. Dlaczego? Ponadto wszystkie deskryptory …

2
Wykonaj polecenie w zdalnym aktywnym terminalu
Załóżmy, że masz otwarty emulator terminala (T1) z PID 6350. Z innego terminala wpisz polecenie (C1): echo "ls\n" &gt; /proc/6350/fd/0 To zapisuje lsi nowy wiersz w T1, ale go nie wykonuje. Dlaczego? Próbowałem również używać cat|bashz, echo "ls\n" &gt; /proc/catid/fd/0ale nadal nie jest wykonywany. Jak mogę powtórzyć polecenie w innym …

3
Pisanie do standardowego procesu
O ile rozumiem, jeśli wpisuję następujące ... python -i ... interpreter Pythona będzie teraz czytał ze standardowego wejścia, zachowując się (oczywiście) w następujący sposób: &gt;&gt;&gt; print "Hello" Hello Spodziewałbym się, że zrobi to samo, jeśli to zrobię: echo 'print "Hello"' &gt; /proc/$(pidof python)/fd/0 Ale to jest wynik (wypełnienie rzeczywistej pustej …

2
Jak czytać dane wprowadzane przez użytkownika podczas korzystania ze skryptu w potoku
Ogólny problem Chcę napisać skrypt, który wchodzi w interakcję z użytkownikiem, nawet jeśli jest on w środku łańcucha potoków. Konkretny przykład Konkretnie, zajmuje to filelub stdinwyświetla linie (z numerami linii), prosi użytkownika o wprowadzenie wyboru lub numerów linii, a następnie drukuje odpowiednie linie do stdout. Nazwijmy ten skrypt selector. Więc …

1
Etymologia „deskryptora” w „deskryptorze pliku”
Wybór deskryptora słowa zawsze wydawał mi się dziwny. „Indeks” lub „id” wydają się być bardziej oczywistymi alternatywami. Czy istnieje znane uzasadnienie wyboru słowa „deskryptor”? Wydaje mi się, że „deskryptor” przechodzi przez to, że często jest pojęciowo bardziej kluczowy niż liczbowy, ale czasami tak naprawdę jest bardzo liczbowy, więc domysł wydaje …
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.