Ero sivun ”Työhakemisto” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
pEi muokkausyhteenvetoa
(laajennusta)
Rivi 1: Rivi 1:
Työhakemistolla tarkoitetaan [[hakemisto]]a, jossa ohjelma suoritetaan. Tällä on merkitystä, jos suoritettava ohjelma yrittää avata esimerkiksi omasta hakemistostaan [[tiedosto]]ja (esimerkiksi viittaa niihin polulla <tt>./hakemisto/tiedosto.data</tt>).
Työhakemistolla tarkoitetaan [[hakemisto]]a, jossa ohjelma (esimerkiksi [[komentotulkki]]) suoritetaan. Kun viitataan tiedostoon antamatta täydellistä polkua, tiedoston sijainti määritellään työhakemistosta alkaen.


Nykyisen työhakemiston saa selville komennolla <tt>[[pwd]]</tt>.
Nykyisen työhakemiston saa selville komennolla <tt>[[pwd]]</tt> ja siihen voi tarvittaessa viitata pisteellä (jokainen hakemisto sisältää "alihakemiston" . joka on linkki hakemistoon itseensä). Työhakemiston alihakemistossa linux-2.6_2.6.26 sijaitsevan hakemiston Documentation voi siis listata jommallakummalla seuraavista komennoista:
[[ls]] linux-2.6_2.6.26/Documentation
ls ./linux-2.6_2.6.26/Documentation
 
Koska tiedostoja oletusarvoisesti haetaan työhakemistosta, työhakemistoon viitataan eksplisiitisti yleensä vain erikoistapauksissa. Tavallisin on ohjelma, joka ei (vielä) ole [[PATH]]-muuttujan mukaisessa ohjelmahakemistossa, vaan työhakemistossa ([[tiedoston oikeudet|suoritusbitin]] tulee olla asetettuna). Toinen tällainen erikoistapaus on erikoisenniminen tiedosto (tässä jonkun lähettämä tai asentama [[Haittaohjelmat#Troijan hevoset|ansa]]).
 
./uusi_ohjelma
 
[[rm]] -i ./"-rf *"
 
Windowsista poiketen ohjelmia harvoin käynnistetään niiden oma hakemisto työhakemistona. Ohjelman on syytä hakea käyttäjän tiedostoja myös työhakemistosta, mutta asetustiedostot ja ohjelman omat tiedostot ovat ennalta määrätyissä tai [[ympäristömuuttuja]]n tai [[valitsin|valitsimen]] parametrin mukaisissa hakemistoissa.


== Esimerkki ==
== Esimerkki ==

Versio 16. maaliskuuta 2009 kello 16.10

Työhakemistolla tarkoitetaan hakemistoa, jossa ohjelma (esimerkiksi komentotulkki) suoritetaan. Kun viitataan tiedostoon antamatta täydellistä polkua, tiedoston sijainti määritellään työhakemistosta alkaen.

Nykyisen työhakemiston saa selville komennolla pwd ja siihen voi tarvittaessa viitata pisteellä (jokainen hakemisto sisältää "alihakemiston" . joka on linkki hakemistoon itseensä). Työhakemiston alihakemistossa linux-2.6_2.6.26 sijaitsevan hakemiston Documentation voi siis listata jommallakummalla seuraavista komennoista:

ls linux-2.6_2.6.26/Documentation
ls ./linux-2.6_2.6.26/Documentation

Koska tiedostoja oletusarvoisesti haetaan työhakemistosta, työhakemistoon viitataan eksplisiitisti yleensä vain erikoistapauksissa. Tavallisin on ohjelma, joka ei (vielä) ole PATH-muuttujan mukaisessa ohjelmahakemistossa, vaan työhakemistossa (suoritusbitin tulee olla asetettuna). Toinen tällainen erikoistapaus on erikoisenniminen tiedosto (tässä jonkun lähettämä tai asentama ansa).

./uusi_ohjelma
rm -i ./"-rf *"

Windowsista poiketen ohjelmia harvoin käynnistetään niiden oma hakemisto työhakemistona. Ohjelman on syytä hakea käyttäjän tiedostoja myös työhakemistosta, mutta asetustiedostot ja ohjelman omat tiedostot ovat ennalta määrätyissä tai ympäristömuuttujan tai valitsimen parametrin mukaisissa hakemistoissa.

Esimerkki

Seuraava skripti tulostaa hakemiston jossa komento on suoritettu:

#!/bin/bash
echo Olet hakemistossa `pwd`

Jos tämä skripti nyt on käyttäjän kotihakemistossa ja se ajetaan komennolla ./skripti.sh, niin tulos on

Olet hakemistossa /home/käyttajä

Kuitenkin jos siirrytään esimerkiksi juurihakemistoon tulos on eri:

$ cd /
$ /home/käyttäjä/skprti.sh
Olet hakemistossa /

Katso myös