Pytania otagowane jako shell

Powłoka jest interfejsem wiersza poleceń Uniksa. Możesz pisać polecenia w powłoce interaktywnie lub pisać skrypty automatyzujące zadania. Użyj tego znacznika do pytań dotyczących / bin / sh i najbardziej kompatybilnych powłok (ash, bash, ksh, zsh,…). Skrypty powłoki z błędami sprawdź je w http://shellcheck.net przed opublikowaniem tutaj.


1
Dlaczego / etc / shadow skraca hasło ustawione za pomocą polecenia: useradd -p?
[root@P-dude dude]# useradd -p $6$Ic2PVlwi$2nf.IRWTMy0FHrPzaCjkahfu9IIxnzxPZL7yg8SsvOdbjEpoI0G8uy7AqduYKQOn2R/rnnaalRmfPMy.a0 bwong20 [root@P-dude dude]# cat /etc/shadow | grep pswayze pswayze:nf.IRWTMy0FHrPzaCjkahfu9IIxnzxPZL7yg8SsvOdbjEpoI0G8uy7AqduYKQOn2R/rnnaalRmfPMy.a0:16924:0:99999:7::: Nie jestem pewien, dlaczego system usuwa pierwsze czternaście znaków z mojego zaszyfrowanego hasła. Hasło w moim /etc/shadowpliku jest krótsze niż to, co podałem jako argumentuseradd -p
21 shell  useradd 

2
Czy istnieje sposób POSIX na ustawienie zerowego argumentu aplikacji docelowej?
W bashyou can exec -ai in zshmożesz alternatywnie ustawić również ARGV0wykonanie programu z pewnym zerowym argumentem, ale czy istnieje również sposób POSIX? Jak zasugerowano w tym jednym komentarzu, możesz stworzyć (tymczasowy) symboliczny link, aby to osiągnąć, ale w ten sposób nie mogłem ustawić nowej wartości zerowego argumentu na naprawdę dowolną …

2
Sprawdzanie wartości zmiennych środowiskowych w Makefile
Mam cel Makefile, w którym muszę sprawdzić wartość zmiennej środowiskowej. Ale nie otrzymuję dokładnej jego składni. Próbowałem bardzo, ale nie mogę go znaleźć. Każda pomoc jest mile widziana. Nazwa zmiennej środowiskowej: TEST, jej wartość: „PRAWDA” test_target: ifeq ($(TEST),"TRUE") echo "Do something" endif Otrzymuję następujący błąd: /bin/sh: -c: line 0: syntax …
21 shell  make 


6
Czy istnieje inny prosty sposób dołączenia wiersza na końcu pliku niż `>>`?
Ostatnio powtarzam krótkie zdania do tree_holepliku. Korzystałem echo 'something' >> tree_holez tej pracy. Ale zawsze martwiłem się tym, co jeśli wprowadzę w błąd >zamiast >>, ponieważ robiłem to często. Więc stworzyłem własny bashrc w bashrc: function th { echo "$1" >> /Users/zen1/zen/pythonstudy/tree_hole; } export -f th Ale zastanawiam się, czy …

3
Czy wpisanie innego polecenia w STDIN jest bezpieczne, gdy poprzednie polecenie zapisuje w STDOUT?
Być może już na to odpowiedziano, z przyjemnością powitam link do innej odpowiedzi ... Jeśli wykonam polecenie powłoki (w bashpowłoce) w następujący sposób: make Wtedy, gdy odtwarzany makejest przez przewijanie z STDOUTtego makepolecenia, jeśli typ make checki naciśnij enterprzed pierwszym wykonaniem polecenia jest zakończone, gdy makepolecenie ostatecznie zakończy następnego polecenia …
21 bash  shell  stdout  stdin 

5
skrypt bash [x $ 1 = x]
Czytam skrypt bash Nie rozumiem, co się tam dzieje. #!/bin/sh [ x$1 = x ] Co dzieje się na drugiej linii i co to [ x$1 = x ] znaczy?
21 bash  shell 


6
Uzyskiwanie względnych połączeń między dwiema ścieżkami
Powiedz, że mam dwie ścieżki: <source_path>i <target_path>. Chciałbym moją skorupę (zsh), aby automatycznie sprawdzić, czy istnieje sposób, aby reprezentować <target_path>od <source_path>jako ścieżkę względną. Np. Załóżmy <source_path> jest /foo/bar/something <target_path> jest /foo/hello/world Wynik byłby ../../hello/world Dlaczego potrzebuję tego: Musi Lubię tworzyć dowiązania symbolicznego od <source_path>celu <target_path>za pomocą względnego łącza symboliczne ile …
21 shell  files  zsh  symlink 

4
podziel długą linię na separatorze
Jakiego polecenia mogę użyć do podzielenia danych wejściowych w ten sposób: foo:bar:baz:quux zaangażowany w to? foo bar baz quux Próbuję rozgryźć cutpolecenie, ale wydaje się, że działa ono tylko ze stałą ilością danych wejściowych, takich jak „pierwsze 1000 znaków” lub „pierwsze 7 pól”. Muszę pracować z dowolnie długim wkładem.

1
Dlaczego „nie” pokazuje tego pliku?
Używając findz grep, można zlokalizować pliki, które pasują do wzorca: # find | grep error ./solr-modifiedSolr4/SolrPhpClient/phpdocs/errors.html ./error_log ./includes/classes/error_log Jednak przy użyciu findsamego pierwszego pliku nie znaleziono: # find . -name error* ./error_log ./includes/classes/error_log Dlaczego nie findlokalizuje errors.htmlpliku, gdy nie jest używany grep? Jak findwyświetla się również ten plik?

1
Zajmuje dużo czasu w małym katalogu
Uruchamiając Ubuntu, otwieram terminal i robię sudo bash cd / ls | head -n 1000 I przewidywalnie zwracanych jest około 20 katalogów. Jeśli jednak zrobię ls i nie podłączę go do niczego, ls po prostu wisi tam, dopóki nie zabiję go z innego terminalu. Co może się dziać? EDYTOWAĆ: > …
21 shell  command-line  files  ls 

4
Jak rozumieć rury
Kiedy użyłem potoku w bashu, nie myślałem o tym więcej. Ale kiedy czytam przykład kodu C za pomocą wywołania systemowego pipe () razem z fork (), zastanawiam się, jak rozumieć potoki, w tym potoki anonimowe i potoki nazwane. Często słyszy się, że „wszystko w systemie Linux / Unix jest plikiem”. …


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.