Veel meer dan 1%, eigenlijk...
Ja, tot op zekere hoogte kun je DOS en Windows applicaties onder Linux draaien! Er zijn twee tamelijk goede emulators: Dosemu ( http://www.dosemu.org) en Wine ( http://www.winehq.com). De laatste wordt bij iedere release veel beter en de lijst met uit te voeren applicaties wordt steeds groter. Zelfs Word en Excel draaien eronder!
Onder UNIX zijn een aantal veel gebruikte applicaties voor het archiveren
en comprimeren van bestanden.
tar wordt gebruikt om archieven te maken---het is als
PKZIP of Winzip maar comprimeert niet, het maakt alleen
archieven. Typ voor het maken van een archief:
$ tar cvf <archive_name.tar> <file> [file...]
Voor het extraheren van bestanden uit een archief:
$ tar xvf <archive_name.tar> [file...]
Voor het tonen van de inhoud van een archief:
$ tar tf <archive_name.tar> | less
Met compress, welke verouderd is en niet meer gebruikt zou moeten
worden, of gzip:
$ compress <file>
$ gzip <file>
waarmee een gecomprimeerd bestand met de extensie .Z wordt aangemaakt
(compress) of .gz ( voor gzip). Deze programma's
kunnen slechts één bestand tegelijkertijd comprimeren.
Decomprimeren:
$ compress -d <file.Z>
$ gzip -d <file.gz>
LMP.
Er zijn ook nog de utility's unarj, zip en
unzip (PK??ZIP
compatibele). Bestanden met de extensie .tar.gz of
.tgz (gearchiveerd met tar, en vervolgens gecomprimeerd
met gzip) zijn ook zeer algemeen in de UNIX-wereld net als .ZIP
bestanden onder DOS.
Zo kun je de inhoud van een .tar.gz archief weer laten geven:
$ tar ztf <file.tar.gz> | less
Ten eerste: het installeren van packages is het werk van root. De meeste
Linux applicaties worden als .tar.gz archief gedistribueerd, die
vaak bestaat uit een directory met waarschijnlijk de naam pkgname/,
waarin de bestanden en/of subdirectory's staan. Het is een goede gewoonte
om deze packages vanuit de directory /usr/local te installeren met
het commando:
# tar zxf <archive.tar.gz>
en het README of INSTALL bestand te lezen. In de meeste gevallen worden
de bronbestanden van de applicatie gedistribueerd, wat inhoudt dat je het moet
compileren om de uitvoerbare bestanden aan te maken;
vaak is het al voldoende om make en daarna make install in
te tikken. Uiteraard heb je hiervoor de gcc of g++
compiler nodig.
Andere archieven moeten worden uitgepakt vanuit /; dit is het
geval met de .tgz archieven van Slackware.
In andere archieven bevinden zich bestanden, maar dan zonder subdirectory
- pas op dat je de boel niet verknoeit!
Bekijk altijd de inhoud van het archief voordat je het installeert.
De Debian en Red Hat distributies hebben hun eigen archief formaat;
respectievelijk, .deb en .rpm. De laatste wint een brede
acceptatie; om een .rpm package te installeren, tik je in:
# rpm -i package.rpm
Terugscrollen: het indrukken van <SHIFT + PAG UP> (de grijze toets) maakt dat je een paar pagina's terug kunt scrollen, afhankelijk van de hoeveelheid van het videogeheugen.
Resetten van het scherm: als je met more of cat
een binair bestand bekijkt, dan kan het gebeuren dat je scherm vol met rommel
staat. Om dit te herstellen, tik dan blind reset in of de volgende
reeks met tekens: echo CTRL-V ESC c RETURN.
Het plakken van tekst: in console, zie hieronder; in X, klik
en sleep om de tekst in een xterm window te selecteren, druk dan
de middelste muisknop in (of de twee muisknoppen samen als je een twee-knops
muis hebt) om de tekst te plakken. Er is ook een xclipboard
(helaas, alleen voor tekst); laat je niet in de war brengen door de zeer
trage response.
Gebruik van de muis: als je gpm, een mousedriver voor de
console, hebt geïnstalleerd, dan kun je klikken en slepen om tekst te
selecteren, en vervolgens (op een andere plaats) de rechtermuisknop indrukken
om de geselecteerde tekst te plakken. Dit werkt ook door in de ene VC tekst te
selecteren en deze in een andere VC te plakken.
Meldingen van de kernel: kijk als root in /var/adm/messages of
/var/log/messages om te zien wat de kernel je te melden heeft,
inclusief de meldingen bij het opstarten.
Het commando dmesg is ook handig.
Als je je afvraagt of je je oude en vertrouwde DOS/Win applicatie door een Linux applicatie kunt vervangen, raad ik je aan eens naar de belangrijkste Linux software opslagplaats te surfen: ftp://metalab.unc.edu/pub/Linux. Andere goede startplaatsen zijn de ``Linux Applications and Utilities Page'' http://www.xnet.com/~blatura/linapps.shtml, de ``officiële'' Linux page http://www.linux.org, en http://freshmeat.net.
Linux kan verschrikkelijk veel dat onder DOS/Windows omslachtig, moeilijk of onmogelijk was. Hier is een beknopte lijst om de smaak te pakken te krijgen:
at maakt het mogelijk programma's op bepaalde tijden
uit te voeren:awk is een eenvoudige maar krachtige taal om gegevensbestanden
te manipuleren (en niet alleen dat).
Als bijvoorbeeld data.dat je uit meerdere velden bestaande
gegevensbestand is, drukt
$ awk '$2 ~ "abc" {print $1, "\t", $4}' data.dat
de velden 1 en 4 van iedere regels in data.dat af waarvan het
tweede veld de string ``abc'' bevat.cron is nuttig voor het periodiek uitvoeren van taken,
op opgegeven datum en tijd. Typ man 5 crontab.file <bestandsnaam> vertelt je wat bestandsnaam
voor een soort bestand is
(ASCII-tekst, uitvoerbaar bestand, archief, enz.);find (zie tevens sectie
Directory's: Commando's vertalen) is één van de
krachtigste en handigste commando's.
Het wordt gebruikt om naar bestanden te zoeken die voldoen aan verscheidene
karakteristieken en waarop acties kunnen worden uitgevoerd. Algemeen gebruik
van find is:
$ find <directory> <expressie>
<expressie> bevat zoekcriteria en acties. Voorbeelden:
$ find . -type l -exec ls -l {} \;
zoekt naar alle bestanden welke symbolische koppelingen zijn en geeft aan
waarnaar ze verwijzen.
$ find / -name "*.old" -ok rm {} \;
zoekt naar alle bestanden die overeenkomen met het patroon het verwijdert ze,
waarbij eerst om bevestiging wordt gevraagd.
$ find . -perm +111
zoekt naar alle bestanden waarvan de permissies overeenkomen met 111
(uitvoerbaar bestand).
$ find . -user root
zoekt naar alle bestanden die aan root toebehoren. Heel veel mogelijkheden
hier---LMP.grep zoekt naar tekstpatronen in bestanden. Bijvoorbeeld,
$ grep -l "geology" *.tex
toont de *.tex bestanden waarin het woord ``geology'' voorkomt. Een variant
op grep genaamd zgrep werkt op gzipped bestanden. LMP;^a[^a-m]X{4,}txt$ komt overeen met een regel welke begint met een
`a', gevolgd door een willekeurig teken behalve die in het interval a-m,
gevolgd door 4 of meer `X' tekens en eindigt op `txt'.
Reguliere expressies gebruik je met geavanceerde editors,
less, en vele andere applicaties. man grep voor
een introductie.script <script_file> dumpt de inhoud van het scherm
in een scriptbestand genaamd script_file totdat je het commando
exit geeft. Handig voor het opsporen van fouten;sudo maakt het gebruikers mogelijk een aantal van de
taken van root uit te voeren (b.v. het formatteren en mounten van disks;LMP);uname -a geeft je info over je systeem;zcat en zless zijn handig voor het doorbladeren
en omleiden van met gzip gecomprimeerde bestanden zonder ze te
decomprimeren. Bijvoorbeeld:
$ zless textfile.gz
$ zcat textfile.gz | lpr
bc, cal, chsh, cmp,
cut, fmt, head, hexdump, nl, passwd, printf, sort, split, strings, tac,
tail, tee, touch, uniq, w, wall, wc, whereis, write, xargs, znew. LMP.
Geloof het of niet, er zijn prima tools die voorzien in een op UNIX lijkende omgeving onder DOS/Windows! Een daarvan is de Djgpp suite ( http://www.delorie.com/djgpp/) voor DOS, en Cygwin ( http://www.cygnus.com/cygwin) is een complexere port voor Win32. In beiden zijn dezelfde GNU ontwikkelaars tools en utility's als Linux opgenomen; je krijgt echter niet dezelfde stabiliteit en performance.
Probeer Djgpp als je de smaak van Linux te pakken wilt krijgen. Download
en installeer de volgende bestanden (tijdens dit schrijven, is de laatste
versie 2.0.2):
djdev202.zip, bnu281b.zip, bsh1147b.zip, fil316b.zip, find41b.zip,
grep22b.zip, gwk303b.zip, lss332b.zip, shl112b.zip.. In installatie
instructies is voorzien, en je kunt assistentie vinden op
news:comp.os.msdos.djgpp.
In het bijzonder is het gebruik van bash onder DOSWin een
opluchting. Om het op je juiste wijze te configureren, wijzig je het
meegeleverde bestand BOOT.BAT om je installatie weer te
geven, plaats deze bestanden dan in je home-directory (in de
Windows partitie) in plaats van degene waarin is voorzien:
# dit is _bashrc
LS_OPTIONS="-F -s --color=yes"
alias cp='cp -i'
alias d='ls -l'
alias l=less
alias ls="ls $LS_OPTIONS"
alias mv='mv -i'
alias rm='rm -i'
alias u='cd ..'
# dit is _bprof
if [ -f ~/_bashrc ]; then
. ~/_bashrc
fi
PS1='\w\$ '
PS2='> '
CDPATH="$CDPATH:~"
# stuff for less(1)
LESS="-M-Q" # lange prompt, stil
LESSEDIT="%E ?lt+%lt. %f" # wijzig eerste regel
VISUAL="jed" # editor
LESSCHARSET=latin1 # toon geaccentueerde letters
export PS1 PS2 CDPATH LS_OPTIONS LESS LESSEDIT LESSOPEN VISUAL LESSCHARSET
Je komt mogelijk heel wat soorten bestandsextensies tegen. Uitgezonderd de meer exotische extensies (d.w.z. fonts, enz.), tref je hier een lijst van aan:
1 ... 8: man pages. Lees ze met
groff -Tascii -man <file.1>.arj: archief aangemaakt met arj.dvi: uitvoerbestand geproduceerd met TeX (zie hieronder).
xdvi om het te bekijken; dvips om het om te zetten in
een PostScript .ps bestand.gz: archief gemaakt met gzip.info: info bestand (soort alternatief van man pages). Haal
hier info voor op.lsm: Linux Software Map bestand. Het is een gewoon ASCII
bestand met de beschrijving van een package.ps: PostScript bestand. Haal voor het bekijken of afdrukken
gs op en optioneel ghostview of gv.rpm: Red Hat package. Je kunt het op ieder systeem installeren
met de package manager rpm.taz, tar.Z: archief aangemaakt met tar en
gecomprimeerd met compress.tgz, tar.gz: archief gemaakt met tar en
gecomprimeerd met gzip.tex: tekstbestand voor TeX, een krachtige zetsysteem.
Het package tex is in diverse distibuties beschikbaar.texi: texinfo bestand, kan zowel TeX als info bestanden
produceren (cp. info). Haal texinfo op.xbm, xpm, xwd: grafisch bestand.Z: archief aangemaakt met compress.
Als je tekstbestanden tussen DOS/Win en Linux uit moet wisselen, wees je
dan bewust van het ``einde regel'' probleem. Onder DOS eindigt iedere
regel tekst op een CR/LF (dat is een ASCII 13 + ASCII 10), onder Linux
op een LF. Als je een DOS tekstbestand onder Linux wijzigt, zal iedere
regel zeer waarschijnlijk op een vreemd--uitziend `M' teken eindigen;
een Linux tekstbestand zal onder DOS verschijnen als een kilometers lange
enkele regel zonder alinea's. Er zijn een aantal tools, dos2unix en
unix2dos, om de bestanden te converteren.
Als je bestanden bestaande uit alleen tekst geaccentueerde tekens bevat, zorg er dan voor dat ze onder Windows (met Notepad/Kladblok) zijn aangemaakt en niet onder gewoon DOS; anders zullen alle geaccentueerde tekens zijn verknald.
Ja, je kunt voor niks krijgen wat anders heel veel geld zou kosten!
StarOffice ( http://www.sun.com/staroffice.) is thans de enige keuze, alhoewel Koffice in de pijplijn zit ( http://www.koffice.org). StarOffice is groot en traag, maar hoe dan ook erg goed; het biedt heel veel functionaliteit die niet in Microsoft Office is te vinden. Het kan bovendien Word en Excel bestanden inlezen, alhoewel de conversie niet altijd perfect is.
Een ander goed package is Corel WordPerfect, een vrij verkrijgbare uitgave die voor download beschikbaar is. Moet ik nog meer zeggen? Haal het op: http://www.corel.com.