Opublikował siefca
n 02 lis 2008 16:40:06 GMT
Jakiś czas temu opublikowałem prostą funkcję używającą narzędzia awk, której możesz użyć, aby poznać, jaki jest punkt montowania dla podanego urządzenia. Dzisiaj zamierzam podzielić się zestawem podobnych funkcji, które są nieco ulepszone. Pozwalają one określić punkt montowania dla podanego pliku specjalnego odwołującego się do urządzenia lub zwykłego pliku. Ostatnia z funkcji jest wrapperem, który używa poprzednich, aby uczynić mechanizm prostym w użyciu, gdy dane pochodzą z zewnątrz.
Czytaj dalej…
bez komentarza,
bez trackbacka
Tagi: bash, fs, funkcja, GNU, kod, Linux, mount, pdksh, shell, system plików, Unix
Opublikował siefca
so 25 paź 2008 12:37:20 GMT
Pytanie
Mam w skrypcie powłoki pętlę, która iteruje po podanych jej nazwach. Reprezentują one pewne ścieżki w systemie plików. Niestety, gdy w którejś wartości znajdzie się znak gwiazdki, to przemądrzały shell w jej miejsce wstawia nazwy istniejących zbiorów pasujące do wzorca. A ja potrzebuję przekazać te gwiazdki i znaki zapytania do zmiennej, w nienaruszonej postaci.
Odpowiedź
Większość powłok próbuje nam pomóc i w przypadku pętli for … in … w miejsce nazw z listy po prawej stronie wstawia nazwy plików pasujące do symboli wieloznacznych (takich jak * czy ?).
Czytaj dalej…
jeden komentarz,
bez trackbacka
Tagi: bash, for, globalizowanie, GNU, interpreter, Linux, lista, pętla, podstawianie, powłoka, shell, symbole wieloznaczne, Unix, wildcards, wyliczanie, wzorzec
Opublikował siefca
wt 21 paź 2008 10:30:08 GMT
W systemach typu Unix istnieje polecenie o nazwie dirname, którego zadaniem jest wyświetlenie podanej nazwy ścieżkowej skróconej przez oddzielenie ostatniego elementu znajdującego się po wysuniętym najbardziej na prawo znaku ukośnika (włączając ukośnik). Wykorzystuje się je do tego, aby na podstawie ścieżki określającej nazwę pliku uzyskać nazwę katalogu. Czasami też wykorzystywane bywa w skryptach, które rekurencyjnie wywołując dirname dla tej samej zmiennej “podróżują” w głąb drzewa katalogowego. Ostatnimi czasy musiałem posłużyć się wielokrotnie wywoływanym poleceniem dirname w połączeniu ze skryptem awk. Tak więc, chcąc uniknąć zbędnego powoływania do życia osobnego procesu, a tym samym spowalniania wykonywania skryptu, pokusiłem się o stworzenie implementacji dirname w awk.
Czytaj dalej…
bez komentarza,
bez trackbacka
Tagi: awk, bash, directory, dirname, GNU, katalog, Linux, narzędzie, pdksh, polecenie, przetwarzanie tekstu, shell, Unix
Opublikował siefca
cz 16 paź 2008 17:06:03 GMT
Funkcja powłokowa getmount() próbuje określić, jaki jest punkt zamontowania w systemie plików dla podanego urządzenia. Oczywiście nie korzysta ona z pomocy użytkownika, ani tym bardziej jasnowidza, więc nie jest w stanie domyślić się ścieżki, jeśli nie jest ona nigdzie wpisana lub została schowana w gąszczu szalonych dowiązań.
Czytaj dalej…
bez komentarza,
bez trackbacka
Tagi: bash, fs, funkcja, GNU, kod, Linux, mount, pdksh, shell, system plików, Unix
Opublikował siefca
wt 14 paź 2008 09:44:17 GMT
Jak to się stało?
Prawie trzy tygodnie temu nabyłem drogą kupna kilka pudełek do przechowywania różnych rzeczy, które zwykle istnieją sobie na podłodze. Idąc za ciosem postanowiłem odkurzyć pokój, ponieważ stało się to w końcu możliwe bez uszczerbku dla ważnych dokumentów, nośników i śrubek. Odkurzając postanowiłem zaprowadzić ład również we wnętrzu stacjonarnej jednostki PC, którą otworzyłem demontując przy okazji zasilacz. Gdy rzadko używany sprzęt był już hardware’owo czysty przyszła mi do głowy myśl o tym, aby korzystając z porządkowego nastroju sporządzić mechanizm regularnego wykonywania kopii zapasowych wszystkich moich systemów działających w Sieci. Następnego dnia wiedziałem już, że potrzebują trzech dysków, każdy po przynajmniej terabajt i może lepszego procesora.
Czytaj dalej…
2 komentarze,
bez trackbacka
Tagi: blog, CMS, CSS, GNU, JavaScript, Linux, Passenger, randomseed, Ruby, Ruby on Rails, Typo, Unix, XHTML