Begin me der niet overquote:Op woensdag 2 mei 2007 16:47 schreef devzero het volgende:
[..]
De bourne shell (sh) had al support voor arrays, alleen zit je dan vaak te kloten met shift etc.
Thanks, weer wat geleerd.quote:Op woensdag 2 mei 2007 20:35 schreef devzero het volgende:
setgid bit op de parent directory aanzetten. Dus bv
# chgrp www-data /www
# chmod 2755 /www
(of chmod g+s /www)
1 2 3 4 5 6 7 8 9 10 11 | case $@ in --topic *) echo "Inserting TVP in topic $2" exit 0 ;; *) echo "Usage: `basename $0` --topic <topic nummer>" ;; esac |
Jij hebt meer verwijderd dan alleen maar tvp's.quote:Op woensdag 2 mei 2007 23:51 schreef Godlike02 het volgende:
tvp's weer eens weg
Sorry dan!quote:Op donderdag 3 mei 2007 08:54 schreef wdn het volgende:
[..]
Jij hebt meer verwijderd dan alleen maar tvp's.
Ik wil graag weten hoe ik erachter kom waarom VLC af en toe hapert tijdens het afspelen van een bestand op mijn laptop. Sinds gisteren heb het idee dat dit alleen is als de AC eraf is maar dat weet ik nog niet zeker.
'update' is het niet. Screensaver staat in elk geval uit. En powermanagement toont ook niet echt iets waarvan ik zeg: dat kan het zijn.
Hoe vind ik welk proces dit betreft? Ik ken "top" maar als ik een video afspeel is dat niet echt zichtbaar.
Kan ik ergens een historie zien van de belasting van mijn systeem?
1 2 3 4 5 6 7 | chars=( t v p ) for char in ${chars[@]} do echo -ne $char done |
Ochquote:
echo $variabele | wc -cquote:Op donderdag 3 mei 2007 11:49 schreef maniack28 het volgende:
Ik wil in een bash weten hoe lang een bepaalde variable is.. uit hoeveel getallen hij bestaat. Ik weet dat het in je prompt met wc -c filenaam kan, maar ik heb in dit geval geen filenaam, maar een variable. Hoe gaat dat dan in zn werk?
quote:
Daar kun je inderdaad backticks voor gebruiken. Hiermee kun je de uitvoer van een commando gebruiken in een ander commando.quote:Op donderdag 3 mei 2007 11:58 schreef maniack28 het volgende:
[..]
_O_
En nu nog aan een variable toekennen :') want test=$variable | wc -c kent ie niet.. dan is $test gelijk aan 0, terwijl de echo van hierboven 4 geeft...
Moet dat met een backquote (die ik niet snap :') )
1 |
1 2 3 4 5 | ~$ export test=`echo $blabla | wc -c` ~$ echo $test 21 ~$ |
Ah kay.. nu snap ik ze.. je voert een commando uit en de uitvoer ken je toe aan een variable.. dus je moet op die manier altijd echo gebruiken en datgeen wat "geprint" wordt, wordt toegekent aan je variablequote:Op donderdag 3 mei 2007 12:05 schreef cyberstalker het volgende:
[..]
Daar kun je inderdaad backticks voor gebruiken. Hiermee kun je de uitvoer van een commando gebruiken in een ander commando.
Dus bijvoorbeeld
[ code verwijderd ]
Voorbeeldje:
[ code verwijderd ]
Overigens, $bla=1 is op een verkeerde manier een parameter aan het variable toekennen: bla=1 is de juiste manier.quote:Op donderdag 3 mei 2007 12:05 schreef cyberstalker het volgende:
[..]
Daar kun je inderdaad backticks voor gebruiken. Hiermee kun je de uitvoer van een commando gebruiken in een ander commando.
Dus bijvoorbeeld
[ code verwijderd ]
Voorbeeldje:
[ code verwijderd ]
1 2 3 4 5 6 | 4 15:29 pts/13 0 wesleys@eniac:/home/wesleys$ isLong Bla Bla: 3 char(s) long 15:29 pts/13 0 wesleys@eniac:/home/wesleys$ echo -n Bla | wc -m 3 |
1 2 3 4 5 6 7 8 | use warnings; use strict; foreach (@ARGV) { printf("%s: %s char(s) longn", $_, length($_)); } |
[mierenneukmode]quote:Op donderdag 3 mei 2007 15:27 schreef slakkie het volgende:
Overigens, $bla=1 is op een verkeerde manier een parameter aan het variable toekennen: bla=1 is de juiste manier.
Mierenneukerquote:Op donderdag 3 mei 2007 21:57 schreef devzero het volgende:
Deze is echt nice, ik zie hem nu pas...quote:Op vrijdag 4 mei 2007 15:33 schreef slakkie het volgende:
http://video.google.com/videoplay?docid=8100808442979626078
1 2 3 4 5 6 7 8 | layout.current_col = 0; if (layout.current_col >= layout.cols) layout.current_col = layout.cols - 1; if (layout.current_row < 0) layout.current_row = 0; if (layout.current_row >= layout.rows) layout.current_row = layout.rows - 1; |
1 2 3 4 5 6 7 8 | layout.current_col = layout.cols - 1; if (layout.current_col >= layout.cols) layout.current_col = 0; if (layout.current_row < 0) layout.current_row = layout.rows - 1; if (layout.current_row >= layout.rows) layout.current_row = 0; |
Met compiz & cube is dit standaard behaviorquote:Op vrijdag 11 mei 2007 20:34 schreef Farenji het volgende:
Ha ik heb zojuist mijn eerste eigen custom patch gedaan, in Metacity en die was zo simpel doch geniaal dat ik hem wel wil delen hier. Zelfs een linux newbie kan dit doen.
Ik kan nu met ctrl-alt links en rechts gewoon door mijn workspaces cyclen, zonder dat ie stopt aan de rand en je weer terug moet. Misschien ben ik de enige die zich eraan ergert maar onder Gnome is dat niet te configureren itt KDE, en ik vind het iig ergerlijk genoeg om er wat aan te doen, en in de open source wereld kun je dat dus zelf en met debian of ubuntu is dat heel simpel.
Ik heb de source van metacity mbv "apt-get source metacity" en alle dependencies gedownload met "apt-get build-dep metacity". Je hebt dan alles wat je nodig hebt om zelf te compileren. De source komt in /usr/src/metacity-x.y.z/ terecht (afhankelijk van de versie).
In src/workspaces.c heb ik rond regel 840 (de plek kan varieren) het volgende fragment:
[ code verwijderd ]
vervangen door:
[ code verwijderd ]
Er is dus nauwelijks iets veranderd maar de verandering is wel essentieel.
Daarna run je "debian/rules binary" in de /usr/src/metacity-x.y.z directory en daarna alle gebouwde .debs installeren met "dpkg -i <naam.deb>" die in /usr/src staan.
Even opnieuw inloggen en klaar! Een kind kan de was doen.
Zeker wel, en het werkt het beste in deze volgorde (eerst Windows, dan Linux)... De boot loader die Ubuntu gebruikt, Grub, kan gewoon overweg met bestaande Windows installaties.quote:Op zondag 13 mei 2007 15:09 schreef Uzumaki_Naruto het volgende:
ik heb een dual boot met vista en xp
maar wil graag (K)Ubuntu er ook bij instaleren,gaat dit lukken?
Nee, als het goed is wordt die door Grub gewoon goed opgepakt... Ik heb zoiets gelezen in het Linux Magazine van deze maand... Als je wil zoek ik het nog even voor je na...quote:Op zondag 13 mei 2007 20:21 schreef Uzumaki_Naruto het volgende:
gaat de vista boatloader dan geen kuren vertonen?
zou tof zijnquote:Op zondag 13 mei 2007 20:50 schreef whoops het volgende:
[..]
Nee, als het goed is wordt die door Grub gewoon goed opgepakt... Ik heb zoiets gelezen in het Linux Magazine van deze maand... Als je wil zoek ik het nog even voor je na...
Tja, nog lang niet alles wordt ondersteunt, maar met ndiswrapper krijg je veel dingen wel aan de praat.quote:Op dinsdag 15 mei 2007 15:22 schreef Uzumaki_Naruto het volgende:
en hoe zit het tegenwoordig met Wi-Fi?
Krijg je geen mailtjes over wat er gebeurt is? Voor zover ik weet stuurt de cron daemon automatisch een mailtje naar de de persoon die de opdracht aan de crontab heeft toegevoegd, mits het commando uitvoer geeft.quote:Op dinsdag 15 mei 2007 16:21 schreef Niesl het volgende:
Ik heb een scriptje geschreven dat als ik het handmatig draai, netjes een apt-get update en daarna een apt-get -y upgrade doet. Hierdoor wordt mijn machine weer netjes up to date gebracht.
Nu heb ik dit scriptje in mijn crontab staan, maar helaas, ik moet toch nog steeds zelf de apt-get upgrade geven. Iemand die hier zijn licht over kan schijnen?
Kubuntu Dapper Drake LTS (6.06)
Er zaten twee fouten inquote:Op dinsdag 15 mei 2007 16:28 schreef cyberstalker het volgende:
[..]
Krijg je geen mailtjes over wat er gebeurt is? Voor zover ik weet stuurt de cron daemon automatisch een mailtje naar de de persoon die de opdracht aan de crontab heeft toegevoegd, mits het commando uitvoer geeft.
Heb je de uitvoer van de apt-get commando's soms uitgezet? Misschien even aanzetten voor een beter beeld. Wat je ook nog zou kunnen doen is bij elk commando wat je vanuit je script draait een echo te doen die het complete commando laat zien, dan zie je ook sneller wat er mis gaat.
Wat je ook in de gaten moet houden is dat je in je script het best complete paden naar de executables kunt geven. Dus niet apt-get maar /usr/bin/apt-get bijvoorbeeld (vervangen door jouw pad, kun je vinden met which apt-get).
Ja, ik heb zo'n USB geval gekregen bij m'n XS4ALL-abonnement: Siemens Gigaset 108. Hij doet het uiteindelijk met Feisty, maar geen WPA, wel WEP. Ik heb ontzettend lang zitten klooien om WPA voor elkaar te krijgen, tot ik op gegeven moment besloot dat het soms niet erg is als iets niet lukt en dat je het achter je moet latenquote:Op dinsdag 15 mei 2007 16:16 schreef devzero het volgende:
Iemand ervaring met USB wireless dingen?
Ligt aan je wireless kaart. Op mijn dell moest ik aan de slag met bmccutter-nogwat en op mijn HP/compaq wordt de kaart gewoon geherkend. Verder met wpa_supplicant indien je WPA/WEP/etc beveiliging hebt. Werkt als een speer.quote:Op dinsdag 15 mei 2007 15:22 schreef Uzumaki_Naruto het volgende:
en hoe zit het tegenwoordig met Wi-Fi?
die ik iets verkeerd?quote:dirk@kubuntu-desktop:~/RT61_Linux_STA_Drv1.1.0.0/Module$ make all
make -C /lib/modules/2.6.20-15-generic/build SUBDIRS=/home/dirk/RT61_Linux_STA_D rv1.1.0.0/Module modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.20-15-generic'
CC [M] /home/dirk/RT61_Linux_STA_Drv1.1.0.0/Module/rtmp_main.o
/home/dirk/RT61_Linux_STA_Drv1.1.0.0/Module/rtmp_main.c: In function ‘RT61_probe ’:
/home/dirk/RT61_Linux_STA_Drv1.1.0.0/Module/rtmp_main.c:197: error: ‘struct net_ device’ has no member named ‘get_wireless_stats’
/home/dirk/RT61_Linux_STA_Drv1.1.0.0/Module/rtmp_main.c: In function ‘RT61_open’ :
/home/dirk/RT61_Linux_STA_Drv1.1.0.0/Module/rtmp_main.c:326: warning: passing ar gument 2 of ‘request_irq’ from incompatible pointer type
make[2]: *** [/home/dirk/RT61_Linux_STA_Drv1.1.0.0/Module/rtmp_main.o] Error 1
make[1]: *** [_module_/home/dirk/RT61_Linux_STA_Drv1.1.0.0/Module] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.20-15-generic'
make: *** [all] Error 2
Kijk hier eens:quote:Op donderdag 17 mei 2007 23:34 schreef Uzumaki_Naruto het volgende:
niemand?
Ben je bekend met hoe verschrikkelijk eenvoudig het is om een WEPkey te kraken?quote:Op vrijdag 18 mei 2007 12:33 schreef Uzumaki_Naruto het volgende:
de tuturial gebruikt WPA,maar ik heb helemaal geen wpa maar wep
heb het net omgezet naar WPAquote:Op vrijdag 18 mei 2007 12:43 schreef cyberstalker het volgende:
[..]
Ben je bekend met hoe verschrikkelijk eenvoudig het is om een WEPkey te kraken?
Die drivers zijn onder veel distro's moeilijk aan de praat te krijgen. Vraag op een willekeurig Linuxforum hoe je ze moet installeren en 9 van de 10 keer krijg je als antwoord: niet aan beginnen, gebruik ndiswrapper.quote:Op woensdag 16 mei 2007 16:35 schreef Uzumaki_Naruto het volgende:
ik zag dat Ralink gewoon linux drivers heeft (met sourcecode erbij )![]()
Dat heb ik eens gedaan, duurde toen een uurtje... Schijnbaar tegenwoordig te doen in een paar minuten.quote:Op vrijdag 18 mei 2007 12:43 schreef cyberstalker het volgende:
[..]
Ben je bekend met hoe verschrikkelijk eenvoudig het is om een WEPkey te kraken?
Ja, zoek maar eens op 'grub'quote:Op maandag 21 mei 2007 18:13 schreef RoaRRR het volgende:[..]
Dual-boot met windows is dat een beetje makkelijk?
Nee.quote:Of moet ik daarvoor gaan klooien met verschillen de Boot-proggies ???
Zoals gezegd is dat niet moeilijk. De installatie van Linux draagt overal zorg voor, zolang je maar Linux na Windows installeert (omgekeerd is geen goed idee).quote:Op maandag 21 mei 2007 18:13 schreef RoaRRR het volgende:
Dual-boot met windows is dat een beetje makkelijk? Of moet ik daarvoor gaan klooien met verschillen de Boot-proggies ???
Ligt er een beetje aan waar je Windows op staat. Maar ook hier krijg je tijdens de installatie van Linux advies over. Waarschijnlijk zal hij vragen of hij een deel van de 60 Gb voor je vrij zal maken.quote:Heb op dit moment 2 HD erin zitten ( buiten een externe) Eentje van 60 GB en 1 van 15 GB. Nog advies op welke ik wat zet ?
Heb helaas die van 60 GB opgedeeld in partities en volgens de documentatie die ik heb zitten lezen moet je hem installen op een partitie loze HD. Dit zal dus de 15 GB HD worden voor het Linux systeem. Mijn externe HD gebruik ik dan wel als ik nog extra opslag nodig heb.quote:Op maandag 21 mei 2007 20:14 schreef Lod het volgende:
[..]
Zoals gezegd is dat niet moeilijk. De installatie van Linux draagt overal zorg voor, zolang je maar Linux na Windows installeert (omgekeerd is geen goed idee).
[..]
Ligt er een beetje aan waar je Windows op staat. Maar ook hier krijg je tijdens de installatie van Linux advies over. Waarschijnlijk zal hij vragen of hij een deel van de 60 Gb voor je vrij zal maken.
Als je tevreden bent over Linux, en hopelijk word je dat, dan kunnen die besturingssystemen naast elkaar blijven bestaan. Door middel van een bootloader (lilo of grub) kun je dan zowel Windows als Linux benaderen. Als je Windows installeert na Linux, dan is de bootloader die Linux geinstalleerd heeft foetsie, en dan zul je met een rescue disk aan de gang moeten om een dual boot situatie te creeeren.quote:Ik wil Windows nog een keer "schoon" erop zetten als ubuntu goed werkt.
Moet ik nu eerst Windos opnieuw installen of kan ik eerst experimenteren met Ubuntu en ubuntu installen om vervolgens Window opnieuw te installen.
Hoe heb je het opgelost?quote:Op zaterdag 19 mei 2007 23:13 schreef TommyGun het volgende:
Edit; nvm
quote:Op dinsdag 22 mei 2007 13:11 schreef RoaRRR het volgende:
Laat maar, ik was denk ik weer te snel met klagen. Een keer opnieuw opstarten en het werkt wel.
MP3 speelt terwijl ik dit type dus zal volgende keer wat langer wachten met klagen
Ik heb een keer urenlang de forums afgestruind om er achter te komen dat ik de avond ervoor de aan-uit knop had ingedrukt van mijn boxen.quote:Op dinsdag 22 mei 2007 13:16 schreef wdn het volgende:
Och. Je wilt niet weten hoe vaak op ubuntuforums het resultaat was dat de volumeknop de oorzaak is![]()
met Thunderbird + NewsWorthy for Thunderbirdquote:Op dinsdag 22 mei 2007 14:26 schreef RoaRRR het volgende:
hehe gelukkig was dit snel opgelost...
Nog een vraagje --> iemand die weet hoe je gebruik kunt maken van nieuwsgroepen / FTD ? Of mag deze vraag niet gesteld worden op FOK! ?
Zou graag toch wel weer het nieuws willen volgen met daarbij de behorende attch. natuurlijk![]()
Moet toch niet zo moeilijk zijn om via nieuwsgroepen iets te downen ?quote:Op dinsdag 22 mei 2007 15:48 schreef wdn het volgende:
Newsx? -> http://www.kvaleberg.com/newsx.html
Type eens:
newsx
in terminal![]()
![]()
Resultaat --> bash: newsx: opdracht niet gevonden
Oh en in de deb kun je bij '<..> files' zien wat je moet opstarten
Oh enne:
http://ubuntuforums.org/showthread.php?t=424944&highlight=newsreader
is wel een interessant topic
Doe eens `dpkg -L newsx`, en dan moet je ff zoeken naar iets met bin/newsx.quote:Op dinsdag 22 mei 2007 15:53 schreef RoaRRR het volgende:
[..]
Moet toch niet zo moeilijk zijn om via nieuwsgroepen iets te downen ?![]()
Thxquote:Op dinsdag 22 mei 2007 19:07 schreef wdn het volgende:
Mocht iemand nog wat free fonts zoeken ->
http://ubuntu.wordpress.c(...)ee-fonts-for-ubuntu/
Ik heb nu SMe gedownload en geïnstalleerd. Dat ging allemaal vrij vlot. Alleen nu moet ik hem die via een browser openen, en mijn windows machine krijgt het niet gevonden. Erg vervelend.quote:Op maandag 21 mei 2007 11:29 schreef Lod het volgende:
Mijn grote favoriet blijft nog Clarkconnect.
Verder heb je nog sme-server en er zijn tal van anderen te vinden.
De twee genoemden zijn van vele markten thuis, web, mail, ftp, windows shares e.d. en ze hebben allebei een webinterface voor het beheer.
quote:alex@alex-desktop:~$ fglrxinfo
display: :0.0 screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: RADEON 9800 Pro
OpenGL version string: 2.0.6334 (8.34.8)
Ok, daar zit zo te zien ook niet alles goed.quote:alex@alex-desktop:~$ beryl-manager
alex@alex-desktop:~$
** (beryl-manager:23641): CRITICAL **: can't execute beryl-xgl: Success
** (beryl-manager:23641): CRITICAL **: can't execute beryl-xgl: Success
** (beryl-manager:23641): CRITICAL **: can't execute beryl-xgl: Success
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | STARTXGL= XGL="/usr/bin/Xgl" XGL_OPTIONS=":1 -fullscreen -ac -accel xv:pbuffer -accel glx:pbuffer" if grep -qs ^use-xgl "$OPTIONFILE"; then if [ -x "$XGL" ]; then STARTXGL=yes fi if [ -r /tmp/.X1-lock ]; then xglpid=`cat /tmp/.X1-lock` if [ -d /proc/$xglpid ]; then echo "Xgl already running" STARTXGL= fi fi fi if [ -n "$STARTXGL" ]; then $XGL $XGL_OPTIONS & DISPLAY=:1 fi # vim:set ai et sts=2 sw=2 tw=80: |
Wat krijgt je windows niet gevonden?quote:Op donderdag 24 mei 2007 09:27 schreef magge het volgende:
Ik heb nu SMe gedownload en geïnstalleerd. Dat ging allemaal vrij vlot. Alleen nu moet ik hem die via een browser openen, en mijn windows machine krijgt het niet gevonden. Erg vervelend.
Wegens nieuwe windows install heb ik ubuntu opnieuw geinstalled ! Deze keer gekozen voor ubuntu omdat ik deze iets fijner vindt als Kubuntu...quote:Op dinsdag 22 mei 2007 12:56 schreef RoaRRR het volgende:
Heb nu kubuntu draaien en moet zeggen dat ik er aardig uit kom hoe alles werkt.
Alleen 1 probleem tot nu toe dat ik niet opgelost krijg --> mijn geluid doet het niet !
Ik heb een oud geluidskaartje in mijn pc zitten maar deze pakt hij dus niet automatisch. Iemand een tip waar ik verder moet ?
1 2 3 4 | [--usage] [OPTION...] <Virtual machine config file> # Dit wordt dus vmplayer -X vmware/Windows 2000 Professional.vmx |
En nog wat leesvoer over SPA (single packet authorization):quote:In general all the great ideas are the simple ones. Many times we see a great idea in practice and we wander why didn’t we thought of that before? It is just so simple… The first time I have seen the knockd project I liked it instantly. The idea is so simple, and though so effective. Knockd is a port-knocking application that silently runs on a server passively listening to network traffic. Once it will see a port sequence it has an action configured for it, it will run that action. We can see this as a remote control to our server: once we hit the right button it will take the appropriate action!
Eigenlijk voer je hier 2 commando's uit, eerst draai je het 'configure' script vanuit de directory waar je staat. Als dat goed is gegaan (de &&) wordt het 'make' commando uitgevoerd.quote:Op zondag 3 juni 2007 21:58 schreef mschol het volgende:
echter loopt hij bij mij stuk op het commando ./configure && make
hij moet kennelijk ffmpeg hebben.
ik heb nu het volgende gedaan:quote:Op zondag 3 juni 2007 22:47 schreef whoops het volgende:
[..]
Eigenlijk voer je hier 2 commando's uit, eerst draai je het 'configure' script vanuit de directory waar je staat. Als dat goed is gegaan (de &&) wordt het 'make' commando uitgevoerd.
Kan je eens kijken waar het mis gaat? Draai eerst ./configure eens en kijk of dat fouten geeft. Zo niet, voer het commando 'make' eens uit. Als de fout in 'make' zit wil het wel eens helpen om 'make clean' te draaien, en daarna 'make' nog eens te proberen.
En zou je de foutmelding hier eens kunnen posten?
zou ik best willen doen maar ik kan nergens een tarball vinden van ffmpeg..quote:checking for ffmpeg headers... configure: error: ffmpeg headers not found.
make sure you've built ffmpeg as shared libs using the --enable-shared option
Nice...quote:
`find . -exec cp {} \;' werkt ook in dit geval.quote:Op vrijdag 13 juli 2007 00:02 schreef kluut het volgende:
Misschien met zoiets:
find . -type f -name "*.*" -exec cp {} /old/ \;
Hoezo werkt dat? Je wilt toch een doel-directory opgeven? (Of mis ik een obscure default-actie?)quote:Op vrijdag 13 juli 2007 04:19 schreef slakkie het volgende:
[..]
`find . -exec cp {} \;' werkt ook in dit geval.
1 |
1 |
Nee, sorry, je moet natuurlijk wel een `cp {} /nieuwe/locatie' opgeven bij de - exec. Het ging mij meer om de `-name "*.*"', die hoef je in dit geval niet op te geven (dit kan ook `-name *' zijn trouwens).quote:Op vrijdag 13 juli 2007 09:33 schreef Iblis het volgende:
Hoezo werkt dat? Je wilt toch een doel-directory opgeven? (Of mis ik een obscure default-actie?)
Overigens is er natuurlijk wel onderscheid tussen '*.*' en '*', het laaste neemt namelijk alle bestanden mee, en het eerste alleen die bestanden met een '.' in de bestandsnaam.quote:Op vrijdag 13 juli 2007 10:47 schreef slakkie het volgende:
[..]
Nee, sorry, je moet natuurlijk wel een `cp {} /nieuwe/locatie' opgeven bij de - exec. Het ging mij meer om de `-name "*.*"', die hoef je in dit geval niet op te geven (dit kan ook `-name *' zijn trouwens).
rsync in de crontabquote:Op woensdag 18 juli 2007 14:40 schreef WyriHaximus het volgende:
Weet iemand een mooie manier om 2 directoryies met elkaar te laten syncen ieder uur zonder al te veel load te veroor zaken in bash? Want heb 2 directories die gesynced moeten worden maar het mag geen 20 minuten duren iedere keer. Dat duurt het nu wel omdat ik letterlijk de directorie opnieuw copieer en doe het nu eens perdag en dat wil ik terug dringen naar 1 min max en ieder uur. Heeft iemand tips of ideeen?
Ik gebruik het liefst 'aptitude search <keyword>' , dan zie je namelijk netjes of iets geinstalleerd is of niet.quote:Op woensdag 18 juli 2007 14:35 schreef Farenji het volgende:
Voor een lijst van geinstalleerde pakketten:
dpkg -l
Om de lijst van installeerbare pakketten te doorzoeken:
apt-cache search <keywords>
Of je gebruikt aptitude.
Het zijn 2 directories op de zelfde bak trouwens alleen verschillende HDD'squote:
Ik denk dat je uitkomt op zoiets:quote:Op woensdag 18 juli 2007 14:46 schreef WyriHaximus het volgende:
[..]
Het zijn 2 directories op de zelfde bak trouwens alleen verschillende HDD's.
* WyriHaximus duikt rsync in
1 |
1 |
1 |
ja ik kan wel iets van regex, alleen leek het net eff wat anders dan dat ik gewend was van phpquote:Op woensdag 18 juli 2007 16:31 schreef Farenji het volgende:
Een replace regexp is als volgt: s/zoektekst/vervangtekst/
Je wil .csv.bak vervangen door .csv, dus dat doe je als volgt:
[ code verwijderd ]
De punt heeft een speciale betekenis, nl een willekeurig karakter. Met een backslash ervoor zoek je ook echt op een punt.
(maar misschien had je dat ook gedaan en komt het door dit gare forum dat niet met bs'es om kan gaan)
De i erachter zorgt dat het allemaal case insensitive werkt.
1 |
1 |
Nee hoor want dat 2e gedeelte is tekst en geen regexp.quote:Op woensdag 18 juli 2007 16:35 schreef wdn het volgende:
Ik denk dat de code van Farenji voor de laatste punt nog een backslah moet hebben
okquote:Op woensdag 18 juli 2007 16:39 schreef Farenji het volgende:
[..]
Nee hoor want dat 2e gedeelte is tekst en geen regexp.
1 |
ja die doet het nu ook wel, allen nu loop ik tegen tekortkoming php+lunix aan...quote:
Met rename kun je command line perl gebruiken, en perl is misschien een bitch maar wel een erg lekkere.quote:Op woensdag 18 juli 2007 18:01 schreef whoops het volgende:
Veel files in een keer renamen is een bitch onder linux...
Bouw gewoon je eigen FTP class ipv de PHP functiesquote:Op woensdag 18 juli 2007 18:28 schreef mschol het volgende:
[..]
ja die doet het nu ook wel, allen nu loop ik tegen tekortkoming php+lunix aan...
het commando http://nl3.php.net/manual/en/function.ftp-nlist.php
geeft onder windows netjes een lijst met bestandsnamen van de huidige directory..
onder linux geeft hij het volledige pad weer...
Idd net als bash, tricky in het begin maar naar mate je ze beter leert kennen mag je veel meerquote:Op woensdag 18 juli 2007 19:53 schreef Farenji het volgende:
[..]
Met rename kun je command line perl gebruiken, en perl is misschien een bitch maar wel een erg lekkere.
ben geen eigen class schrijver...quote:Op woensdag 18 juli 2007 20:25 schreef WyriHaximus het volgende:
[..]
Bouw gewoon je eigen FTP class ipv de PHP functies![]()
[..]
Idd net als bash, tricky in het begin maar naar mate je ze beter leert kennen mag je veel meer.
Ah deze zocht ikquote:Op woensdag 18 juli 2007 20:40 schreef mschol het volgende:
[..]
ben geen eigen class schrijver...
moet gewoon kunnen met ingebouwde functies
de functie basename in php bood voor mij de oplossingquote:Op donderdag 19 juli 2007 11:56 schreef WyriHaximus het volgende:
[..]
Ah deze zocht ik.
Ik wel, vooral als ik niks kan vinden wat aan me eisen voldoet. Vind ik altijd leuk om het uit te gaan zoeken
. HTTP en FTP heb ik mezelf met packedsniffer geleerd, net als SMTP
.
1 2 3 4 | j=`echo $i | sed -e s/.bak$//` mv $i $j done |
1 2 3 | var2=value2 varN=valueN |
1 2 3 4 5 6 7 | if [ -z ${$een_var} ] ; then # error, bestaat niet exit 2 fi # En we gaan verder.. |
Volgens mij moet je gewoon $een_var i.p.v. ${$een_var} aanroepen:quote:Op vrijdag 20 juli 2007 22:26 schreef slakkie het volgende:
Ik heb een vraag over sh (let op, geen bash!).
Een config wat variabelen.
[ code verwijderd ]
Deze config wordt gesourced vanuit een script en het is de bedoeling dat je alleen kan kiezen uit de variabelen var1, var2, varN
Ik heb hetvolgende geprobeerd:
[ code verwijderd ]
Echter ik krijg onder sh een "bad substition" error. Onder zsh heb ik hetzelfde geprobeerd maar ik krijg dan dezelfde error.
What to do?
1 2 3 4 5 6 7 | if [ -z $$een_var ] ; then # error, bestaat niet exit 2 fi # En we gaan verder.. |
De klassieke truc om zoiets te doen is m.b.v. eval, dit start als het ware een extra shell-laag, die commando's evalueert. Het wordt ook gebruikt om arrays te simuleren in sh, zie b.v. deze uitleg van Apple.quote:Op zaterdag 21 juli 2007 08:38 schreef slakkie het volgende:
Dat werkt niet aangezien $$ een special variable is, namelijk je pid, dus de -z passed op 12345een_var. Vandaar dat ik de ${$een_var} heb geprobeerd.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | var2='val2' var3='val3' een_var=$1 eval mijn_var='$'$een_var if [ -z "$mijn_var" ] ; then # error, bestaat niet echo 'error' exit 2 else echo 'jouw var bevat waarde' $mijn_var fi |
Deze oplossing had ik vanochtend ook gevonden. Alleen is het redelijk tricky aangezien je ook ongewild commando's kan injecten met de userinput en dan wordt je script plots levensgevaarlijk... Dan moet ik eerst die sanitizen en dan kan ik denk ik beter even bash gaan gebruiken zodat ik het met een array kan oplossen.quote:Op zaterdag 21 juli 2007 17:05 schreef Iblis het volgende:
Ik heb nu b.v. dit script:
[ code verwijderd ]
Je kunt het uitvoeren met sh script.sh <argument>, b.v. script.sh var1, en dan zal het 'val1' printen, als je script.sh var5 doet, geeft het een error.
De truc zit in de regel 'eval mijn_var='$'$een_var', eerst wordt die regel door je huidige shell geëxpandeerd, die de '$' unquote, en $een_var vervangt door de waarde hiervan (zeg 'var2', en dan krijg je feitelijk mijn_var=$var2, en deze regel krijgt eval mee, en die functie evalueert een string als was het een shell commando. Zo kun je dus commando's samenstellen. Eval evalueert nu dus mijn_var=$var2, en dan krijg je mijn_var de goede waarde.
1 2 3 4 5 6 7 | #FOO=BAR FOO="(echo rm -rf /)" BAR=barmaid eval FOO='$'$FOO |
1 2 3 4 | echo "wrong input" > /dev/stderr exit 2 fi; |
1 2 | 6d0bbbd6bb5ce70be09a63a1f4a96ac9 - |
1 |
Dit verklaart het 1 en ander:quote:Op dinsdag 24 juli 2007 01:56 schreef whoops het volgende:
Ik probeer vanuit bash een md5 digest van een string te genereren. Ik dacht dat volgende wel zou werken:
[ code verwijderd ]
maar als ik deze string met PHP's md5 genereer is de output heel anders, namelijk:
[ code verwijderd ]
de output van md5sum is dus niet wat ik verwacht.
Wat mis ik?
Uiteindelijk ben ik voor deze oplossing gegaan. Werkt vlekkeloos, thnx voor het meedenkenquote:Op zaterdag 21 juli 2007 23:31 schreef Iblis het volgende:
Als de variabelen de naam varX hebben, dan is 't niet zo moeilijk om te checken op valid input, want dan kun je simpelweg iets doen als:
[ code verwijderd ]
quote:Op dinsdag 24 juli 2007 04:24 schreef kluut het volgende:
[..]
Dit verklaart het 1 en ander:
/tmp$ echo "ABCDEFG" > abc
/tmp$ md5sum abc
6d0bbbd6bb5ce70be09a63a1f4a96ac9 abc
/tmp$ wc abc
1 1 8 abc
/tmp$ split --bytes=7 abc
/tmp$ md5sum xaa
bb747b3df3130fe1ca4afa93fb7d97c9 xaa
De eerste md5sum is van 8 bytes, de string wordt afgesloten met een LF (0A)
De tweede md5sum is van 7 bytes, zonder die LF.
Thanks, dat was wat ik over het hoofd zag! (Die fucking newlines ook altijd....quote:Op dinsdag 24 juli 2007 08:52 schreef slakkie het volgende:
@whoops:
echo -n, dan neemt ie de newline niet mee bij het berekenen van je md5 hash.
echo -n "ABCDEFG" | md5sum
bb747b3df3130fe1ca4afa93fb7d97c9 -
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |