typische dingen om via terminal te doen ? tips ?

Wat doen jullie zoal allemaal via de terminal ? Zijn er dingen die sneller gaan via de terminal dan via de GUI ?

ik denk maar aan diskutil repairpermissions …

Wat zijn zo nog typische bruikbare dingen die je mits het juiste commando veel sneller geregeld krijgt via de terminal … ?

thanks !

Ik raad je aan het antwoord hierop alleen te zoeken naarmate je 't nodig hebt.

Ikzelf gebruik 't voor IRC, toegang tot machines op
afstand (beheer dus), en veel op m’n werk.

Ook 't maken van symlinks (aliassen in UNIX-formaat
kan vooralsnog alleen via de Terminal.

Misschien een naïeve vraag: hoe komen jullie aan al die ingewikkelde commando's en hoe kun je die all;emaal toch onthouden? Voor mij zijn het allemaal onbegrijpelijke algebraïsche formules!

Voor de gewone gebruiker is er [u:4813b7683b]niets[/u:4813b7683b] dat in de terminal beter, sneller of handiger gaat.

Sommige systeem hacks worden via de terminal gedaan, zoals bepaalde iTunes opties stiekum aanzetten.

Voor de systeembeheerder / hacker / Unix freak is het veel relevanter om in de terminal te zitten. (* hacker als in expert, niet als kwaadwillende)

Ik zelf zit alleen in de terminal om dingen met verborgen files te doen, (zoals .htaccess voor webservers) of om tests uit te voeren met game server executables die als Unix-command worden geleverd.

drag 'n drop pdf 'jes in de terminal om bv van verschillende pdf'jes 1 grote pdf te maken,

er is een ‘terminal pdf’ commando (www.macosxhints.com, ik ben ff de precieze naam kwijt van het unix commando) wat je kunt installeren en dan voor jouw pdf’jes aan elkaar rijgt. eenmaal geinstalleerd werkt dat supersnel.

veder gebruik het terminal om low-level bv en cd te ejecten als die via de finder/GUI niet meer verwijderd kan worden.

obi

Ik vind ff snel scp typen soms sneller dan ftp'en. Vooral omdat ik public-key authenciation gebruik op de machines waar ik veel naartoe ssh, zodat ik geen wachtwoorden in hoef te typen :)

yep, ssh naar andere machines. Maar vaak ook verplaatsen, kopieren etc. van mappen. En ik run AFS, daarmee kun je netwerkschijven vanuit de hele wereld aan je PC hangen, en dat gaat via de terminal echt stukken sneller dan via de finder. En dan heb ik dus een aantal applicaties die via de terminal runnen, of een terminal nodig hebben.

Maar voor de rest ben ik het met colpolyp eens: als je er niks mee moet, dan heb je een terminal eigenlijk niet nodig.

grtz bart

[quote:b9ca9bc1db]Wat zijn zo nog typische bruikbare dingen die je mits het juiste commando veel sneller geregeld krijgt via de terminal ... ? [/quote:b9ca9bc1db]

Praktijkvoorbeeld:
Het resetten van de firewall. Dat kan heel snel met ipfw -flush.
(met “sudo” ervoor, als je, zoals ik, nog geen root gebruiker hebt op het systeem)

[quote:b9ca9bc1db]Misschien een naïeve vraag: hoe komen jullie aan al die ingewikkelde commando’s en hoe kun je die all;emaal toch onthouden? Voor mij zijn het allemaal onbegrijpelijke algebraïsche formules!
[/quote:b9ca9bc1db]

Dat ik grijp naar de terminal om een cryptisch commando in te typen komt vooral door onkunde.
Ik ben nog niet zolang geleden geswitcht van Windows naar OS X, en van sommige dingen begrijp ik nog niets. Behalve dan dat ze via de terminal (tijdelijk) zijn op te lossen :slight_smile:

Als er iets in het netwerk niet werkt (bijvoorbeeld het benaderen van een gedeelde map op een windows computer), dan denk ik “het zal wel aan de firewall liggen” 8)

Dan tracht ik die bij system preferences, sharing uit te zetten, maar dat gaat niet. :grrr: Er verschijnt een venster waarin staat dat er andere firewall software actief is. Dit is geen correcte conclusie van mijn Mac OS X 10.3 installatie, en het biedt me geen verwijzing naar waar het probleem werkelijk ligt. Kortom voorlopig een (ietwat frusterende) beperking van de user interface van os x.

Maar dat er “iets” is (een programma) dat af en toe regels toevoegt aan de firewall, dat is zeker, want de lijst met regels is veel langer dan de lijst, toen ik de computer net had.

Dat zie ik met het commando ipfw list

Een oplossing is het “resetten” van de firewall (zoals ik elders las).
Na ipfw flush
Is die lijst zo goed als leeg.
Daarna kan ik meestal via de system preferences de firewall wel uit en aan zetten, en dan is de lijst weer zo als hij was.

Ik leef in de (ietwat naïeve) veronderstelling dat de standaard instelling van de firewall veilig is. Ik heb geen bijzondere services draaien op mijn mac, er is voorlopig niets gedeeld.

Welk programma regels toevoegt, daar ben ik nog niet achter***, ik heb er gewoon nog geen tijd en moeite in gestoken om het probleem te onderzoeken. Kennelijk heeft het root toegang, das wel zorgelijk.
:roll:

Op dit gebied laat Mac OS X wel wat steken qua gebruiksvriendelijkheid vallen, ik denk dat dat beter moet kunnen. Zou tiger dit beter doen? OS X 10.3 is nog niet “af”, maar toch een stuk meer “af” dan windows XP, over het algemeen vind ik.

***hmmm, net weer hetzelfde probleem gehad, en ik verdenk VPC nu van het toevoegen en verwijderen van regels…

Die commando's onthou je door veel met de terminal te werken. Soms als je het niet weet kun je twee keer tab doen en 'y' indrukken. Dan krijg je veel commando's. maar nog lang niet alle commando's. Als je bijvoorbeeld MySQL voor darwin hebt geinstalleerd zie je deze commando's niet terug in dit overzicht. Ik werk veel in de terminal omdat het vaak net iets meer kan. Maar het meeste wat standaard in je terminal mogelijk is is ook wel mogelijk met de utilities/hulprogramma's in je programma map. ssh is heel handig om computers of servers te beheren op afstand

Verder ben ik het met de bovenstaande reacties dat als je een normale gebruiker bent makkelijker is om in je GUI te werken.

Beetje ssh naar computers op mijn werk. Ssh binnen mijn eigen netwerk. Wat systeem onderhoud plegen. Gaat idd fijner via de terminal.

Michiel

kan er in de terminal ook via 1 lijn iets onderhandeld worden met "sudo" ? bv: "sudo periodic daily", dan vraagt hij om het wachtwoord, maar kan je dat in één commando ? met paswoord en al in één lijn dus ?

Nee, dan zou je wachtwoord ook meteen plaintext in je input history staan.

ja dattis waar natuurlijk... en via applescript ? met "do shell script" zou dat zo op een of andere manier moeten lukken ?

[quote:c20d5f7f2e="Obi"]drag 'n drop pdf 'jes in de terminal om bv van verschillende pdf'jes 1 grote pdf te maken,

er is een ‘terminal pdf’ commando (www.macosxhints.com, ik ben ff de precieze naam kwijt van het unix commando) wat je kunt installeren en dan voor jouw pdf’jes aan elkaar rijgt. eenmaal geinstalleerd werkt dat supersnel…
obi[/quote:c20d5f7f2e]
http://www.iis.ee.ic.ac.uk/~g.briscoe/joinPDF/

[quote:e367f6059c="sedikit"]Misschien een naïeve vraag: hoe komen jullie aan al die ingewikkelde commando's en hoe kun je die all;emaal toch onthouden? Voor mij zijn het allemaal onbegrijpelijke algebraïsche formules![/quote:e367f6059c]

Een programma dat je kan helpen, is CLIX. Daar staan 450 commando’s in, met korte uitleg, die je in de terminal kunt uitvoeren. Bovendien kun je commando’s die je hebt gevonden op het web erin opslaan.

En als je de terminal opent, kun je vaak 'man <commando>" intypen, waarna je uitleg krijgt over het commando en alle opties en parameters waarmee je het commando kunt geven. (“Man” staat voor manual.)

[quote:d2e5da77d6="BIT"]ja dattis waar natuurlijk... en via applescript ? met "do shell script" zou dat zo op een of andere manier moeten lukken ?[/quote:d2e5da77d6]

man sudo
man sudoers

Read and learn, my young padwan. Effe zoeken naar NOPASSWD vlagje.

maar er staat nergens hoe je dat dan moet toepassen. sorry maar ik ben een unix analfabeet hoor.

veel man pagina's lezen!

Jongens, gedaan met de miserie !! Ik heb gevonden hoe het moet :). Ook heb ik even een script geschreven waar het in zit verwerkt:

[code:1:36c7e33d71]property myPassword : "" – Enter the administrator password between the ""
property defaultCommand : "periodic daily"
property existingCommands : every paragraph of (do shell script "ls /usr/bin ; ls /usr/sbin ; ls /bin | sort -u")

getCommand()

on getCommand()
set theQuestion to (display dialog ("Enter the command you wish to execute with administrator privileges:" & return & return & "Note that it can take a while to execute the command. Do also not use the "top" command.") default answer defaultCommand buttons {"Cancel", "Execute"} default button 2)
set theChoice to button returned of theQuestion
set theCommand to text returned of theQuestion
if theChoice is "Execute" then
if (the first word of theCommand) is in existingCommands then
getResult(theCommand)
else
display dialog ("Command "" & theCommand & "" is an invalid command." & return & "Please enter another command.") buttons {"Again"} default button 1 giving up after 3
getCommand()
end if
end if
end getCommand

on getResult(theCommand)
set theShellResult to (do shell script ("sudo" & space & theCommand) password myPassword with administrator privileges) as string
showResult(theCommand, theShellResult)
end getResult

on showResult(theCommand, theShellResult)
try
if theShellResult is “” then
set theResultMessage to (“You have successfully executed command “” & theCommand & “”, using administrator privileges.”)
else
set theResultMessage to (“You have successfully executed command “” & theCommand & “”, using administrator privileges. This is the result from the shell:” & return & return & theShellResult)
end if
try
set theResultMessage to (display dialog theResultMessage buttons {“Cancel”, “Again”} default button 2)
set theChoice to button returned of theResultMessage
if theChoice is “Again” then my getCommand()
end try
on error errorMessage number errorNumber
beep
set theErrorMessage to (display dialog (“The following error has occurred:” & return & return & errorMessage & return & "Error number " & errorNumber) buttons {“Cancel”, “Again”} default button 1)
set theChoice to button returned of theErrorMessage
if theChoice is “Again” then getCommand()
end try
end showResult[/code:1:36c7e33d71]
Je hoeft geen auteursrechten te betalen :P.
Vul wel eerst het beheerders wachtwoord in tussen de “” in de eerste regel van het script.

Succes !!

Ehm, kijk je wel uit met 't opslaan van je wachtwoord in platte tekst ?

Is nou niet bepaald 't veiligste wat je kunt doen…