Tämän sivun kotoistaminen ei ole vielä täydellinen. Siihen asti keskeneräiset osat käyttävät englanninkielistä alkuperäistekstiä.

cli-app-icon_64.pngHaiku-kohtaiset komentorivisovellukset

Sijainti:/boot/system/bin/
/boot/system/non-packaged/bin/
~/config/bin/
~/config/non-packaged/bin/


All commandline applications shipped with Haiku are in /boot/system/bin/. Your own or additionally installed commandline apps will appear there as well, or in ~/config/bin/, when installed from a .hpkg package. Otherwise you can put them into /boot/system/non-packaged/bin/ or ~/config/non-packaged/bin/. All these locations are part of the PATH variable and are therefore automatically found.
The following isn't an exhaustive list of all Haiku-specific CLI apps, it serves just to highlight a few of the most useful to give you a taste. Feel encouraged to explore what's in the bin/ folders on your own a bit. Executing an app with the parameter --help shows the usage of the command and all its various options.

index Attribuutteihin liittyvät sovellukset: listattr, catattr, addattr, rmattr, copyattr

Näitä komentoja käytetään näyttämään, lukemaan, lisäämään ja poistamaan tiedostojen attribuutteja. Muista, että nämä metatiedot ovat nykyisin käytettävissä vain BFS-alustetuilla taltioilla. Siirrettäessä tiedostoja toisiin tiedostojärjestelmiin kaikki attribuutit häviävät!
Kaikki nämä komennot on kuvailtu aiheessa Pääteikkunan attribuutit.

index Hakemistoihin liittyvät sovellukset: lsindex, mkindex, reindex, rmindex

Näillä komennoilla voit luetteloida, tehdä, indeksoida uudelleen ja poistaa BFS-hakemistojen indeksejä. Jokaisella taltiolla on oma hakemistonsa, muista se kopioidessasi tiedostoja taltiolta toiselle.
Nämä komennot kuvaillaan aiheessa Hakemisto.

index Relating to package management: package, pkgman

The package command is used to manage HPKG packages. Have a look at the article Installing applications to learn the very basics. Usually the tool haikuporter is used to create so-called recipes for automatic package building.

pkgman is used to search, install, update and uninstall packages. Package repositories can be added, dropped and their package lists refreshed. A special kind of update is invoked with the parameter full-sync: It is more aggressive and also downgrades or removes packages, if necessary.
For more details on a parameter, append "--help", e.g. pkgman search --help.

index Hyödylliset skriptikomennot

Tässä on muutamia komentorivityökaluja, jotka ovat erityisen hyödyllisiä skriptikäyttöön (katso myös aihetta Bash ja skriptien käyttö).

alert

alert taikoo tyypillisen hälytysikkunan ennalta määritellyllä kuvakkeella, selittävällä tekstillä ja enimmillään kolmella painikkeella. Se palauttaa painetun painikkeen otsikon ja poistumistilan (alkaen numerosta 0). Esimerkiksi, tämä on tehty rivillä:

alert --idea "FantasticApp(tm) asennettu onnistuneesti!
Haluaisitko linkittää sen?" "Työpöydälle" "Työpöytäpalkkiin" "Ei kiitos"

cli-alert.png

filepanel

filepanel näyttää lataus- ja tallennustiedostopaneelin ja sallii käyttäjän valita tiedoston tai sijainnin. Paluuarvona saat valitun tiedoston tai kansion polun. Käytettävissä on useita parametreja, esimerkiksi aloituskansion asettaminen, ikkunan otsikko, oletusnimi tallennettaessa tai rajoitukset sallituissa tiedostotyypeissä. Tämä on esimerkki

filepanel -s -t "Tallenna lokitiedostosi" -d ~/config/settings -n Fantastic.log

cli-alert.png

hey

hey on pieni aputyökalu, joka lähettää BMessage-viestit sovellukseen ja tulostaa niiden vastauksen. Sitä voidaan käyttää sovellusskriptaukseen, toisin sanoen sovelluksen "kauko-ohjaukseen" skriptistä tai komentoriviltä. Sen käyttö on hiukan mutkikasta... Scot Hackerin BeOS-raamatussa on perusteellinen hey-oppikurssi, jonka tekijä on Chris Herborth.

query

query on komentoriviversio Etsi-paneelista. Itse asiassa, nopea tapa tuottaa hakutermi on rakentaa kysely Työpöytäpalkin Etsi-paneelissa, vaihtaa valikkoon kaavoittain, lisätä kaksoislainausmerkit (") eteen ja taakse ja liittää koko merkkijono query-komentosi perään Pääteikkunassa tai skriptissäsi.

waitfor

waitfor on kiva tapa odottaa tietyn sovelluksen tai säikeen käynnistymistä tai loppumista.

index Muut komennot

checkfs

checkfs on tärkeä työkalu tarkistamaan tiedostojärjestelmäsi virheet. Lisää yksinkertaisesti taltionimi, kuten /Haiku tai laitepolku ja ohjelma käy lävitse jokaisen tiedoston ja korjaa epäyhtenäisyydet missä mahdollista.

desklink

desklink voi asentaa kuvakkeen mille tahansa tiedostolle, kansiolle, kyselylle tai sovellukselle Työpöytäpalkin tarjottimelle. Se tarjoaa myös mahdollisuuden tiettyjen toimintojen suorittamiseen kontekstivalikosta napsauttamalla hiiren oikealla painikkeella kuvaketta. Esimerkkinä, yritä tätä lisäämällä komentorivisovellus screenshot eri valitsimilla ("\" ensimmäisellä rivillä on vain rivinvaihto Pääteikkunassa):

 desklink "cmd=Aktivoi ikkuna (2s):/bin/screenshot --window --border --delay 2" \
"cmd=Poista kopio:desklink --remove=screenshot" /bin/screenshot

cli-alert.png

diskimage

diskimage sallii sinun rekisteröidä tavallisen tiedoston levylaitteena. Voit esimerkiksi rekisteröidä Haiku anyboot-levyvedoksen, liittää se Seuraajassa ja kopoida, muokata tai poistaa siitä tiedostoja käyttäen sitä Asennusohjelman lähteenä.

launch_roster

The launch_daemon starts all sorts of services and applications at boot-up. For some it was instructed to re-start them if they were quit. If you don't want that – maybe you'd like to test a modified Tracker, for example – you use launch_roster to stop the re-starting of the application before quitting it. Similarly, you can start it again or get info about it. Without parameter, launch_roster lists all apps/services that are under its control.
For example, this will stop the re-launching of the Deskbar:

launch_roster stop x-vnd.be-tskb

mountvolume
mount

mountvolume is preferred by many to mount local partitions and disks, because its usage is so easy: just call it with the name of the partition and you're done. Try --help for more options.

mount can additionally mount remote disks by using a network filesystem, like NFS4. You specify the used filesystem with the -t parameter and the remote location with the -p parameter. As filesystem parameter you can use anything you find in /system/add-ons/kernel/file_system (and corresponding file hierarchies under ~/config or "non-packaged", of course). You also have to create a folder as mountpoint. Here's an example:

mkdir -p /DiskStation
mount -t nfs4 -p "192.168.178.3:volume1" /DiskStation

open

open on hyvin kätevä pieni työkalu. Sillä voi avata minkä tahansa tiedoston sen parhaimmaksi katsotulla sovelluksella, tai käynnistää tietyn sovelluksen sen tunnisteen avulla tietämättä sen tarkkaa polkua. Se toimii myös verkko-osoitteiden ja vieläpä "virtuaali"-kansioiden kanssa . nykyiselle kansiolle ja .. äitikansiolle, avaten kansion Seuraajassa.

ramdisk

A ramdisk is like a harddisk running only in the computer's memory. That makes it very fast but also volatile, because its contents vanishes when you shut down the computer, or it crashes or you experience a blackout.
To create a ramdisk of 1 GiB, format to the name "RAMses" and mount it, you enter this in Terminal or create a script of it:

ramdisk create -s 1gb
mkfs -q -t bfs /dev/disk/virtual/ram/0/raw RAMses
mountvolume RAMses

Note: When creating a ramdisk, the ramdisk command prints out the path to it. If you create several disks, that path /dev/disk/virtual/ram/0/raw will change!

To preserve the contents, at least if no calamity like a blackout etc. strikes, a ramdisk can be set up to read/write an image on the harddisk. For that, you need to supply a file of the desired size that will be read from every time you start your ramdisk, and written to when you unmount it. To create an image file "RAMimage" of 500MiB and format it, do this:

dd if=/dev/zero of=RAMimage bs=500M count=1
mkfs -q -t bfs /dev/disk/virtual/ram/0/raw RAMimage

From now on, you start the ramdisk like this:

ramdisk create RAMimage
mountvolume RAMimage

It's very important to always cleanly unmount you ramdisk, either from Tracker or with unmount /RAMimage, or the changes won't be written back to the image file!