The UNIX and Linux Forums  


Go Back   De Unix-en Linux Forum > Top Forums > Programmeren en Shell Scripting
.
google unix.com



Programmeren en Shell Scripting Post vragen over KSH, CSH, SH, Bash, Perl, PHP, sed, awk en andere shell scripts en shell scripting talen hier.

Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
Draad Thread Starter Forum Antwoorden Last Post
krachtig gooien fout: Unix-script dr46014 UNIX voor Dummies Questions & Answers 1 10-01-2008 04:42
awk shell script error: "Syntaxisfout:" Split "onverwachte Herry UNIX voor Dummies Questions & Answers 2 03-17-2008 11:16
Error while trying to brand een PL / SQL doorgaand Unix Script dharmesht Programmeren en Shell Scripting 5 12-11-2003 10:10
UNIX foutenlogboek eysheikah Beveiliging 3 05-31-2003 09:21
SCO UNIX-fout 6, HELP PBNOSGT UNIX voor Dummies Questions & Answers 0 02-01-2002 11:46

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Zoeken in deze Thread Rate Thread Display Modes
  #1 (permalink)  
Old 03-18-2009
joyrules joyrules is offline
Geregistreerde gebruiker
  
 

Join Datum: maart 2009
Posten: 3
Fout in Unix-script

Hoi!
Hierna volgt het script om het aantal gebruikers te vinden en de totale ruimte die wordt verbruikt door hen in de directory
Maar ik krijg weinig fouten Pls help me

Code:
data=`ls -lt $1 |tr -t [' '] ['\t']|tr -s '\t'|cut -f3,5`

count=0

flag=1

sum=0

users_flag=1

check=0

declare -a users

for a in $data

do

	if [ $users_flag -eq 1 ]

	then

		for ((i = 0; $i <= count; $i++))

		do

			if [ $a = ${users[$count]} ]

			then

				flag=0

				break

			fi

		done

		if [ $flag  -eq 1 ]

		then

			users[$count]=$a

			count=expr`$count + 1`

			echo $a >> userdata

		fi

		users_flag=0

	else

		if [ $flag -eq 1 ]

		then

			

			for b in $data

			do

				if [ $check -eq 0 ]

				then

					if [ $b = $a ]

					then 

						check=1

					fi

				else

					sum=`expr $sum + $b`

					check=0

				fi 

			done

		fi

	fi

done


Fouten worden
Q3: 7: te verklaren: niet gevonden
Q3: 9: Syntax error: word unexpected (verwacht "do")

Laatst gewijzigd door joyrules; op 03.18.2009 10:39.. Reden: Opgemaakte script
  #2 (permalink)  
Old 03-18-2009
joeyg's Avatar
joeyg joeyg is offline Forum Staff  
modérateur
  
 

Join Date: december 2007
Locatie: Home 17-time wereld kampioen Boston Celtics
Berichten: 1311
Cool Please repost uw code met behulp van CODETAGS

Zodra je plakt je script te selecteren en klik dan op de # in op de pictogrammen balk boven, dit zal de opmaak. Dit maakt het veel makkelijker om de code te volgen en de verschillende omstandigheden.
  #3 (permalink)  
Old 03-18-2009
joyrules joyrules is offline
Geregistreerde gebruiker
  
 

Join Datum: maart 2009
Posten: 3
Agin Script Formatted


Code:
data=`ls -lt $1 |tr -t [' '] ['\t']|tr -s '\t'|cut -f3,5` 
count=0 
flag=1 
sum=0 
users_flag=1 
check=0 
declare -a users 
for a in $data 
do 
    if [ $users_flag -eq 1 ] 
    then 
        for ((i = 0; $i <= count; $i++)) 
        do 
            if [ $a = ${users[$count]} ] 
            then 
                flag=0 
                break 
            fi 
        done 
        if [ $flag  -eq 1 ] 
        then 
            users[$count]=$a 
            count=expr`$count + 1` 
            echo $a >> userdata 
        fi 
        users_flag=0 
    else 
        if [ $flag -eq 1 ] 
        then 
             
            for b in $data 
            do 
                if [ $check -eq 0 ] 
                then 
                    if [ $b = $a ] 
                    then  
                        check=1 
                    fi 
                else 
                    sum=`expr $sum + $b` 
                    check=0 
                fi  
            done 
        fi 
    fi 
done

  #4 (permalink)  
Old 03-18-2009
joyrules joyrules is offline
Geregistreerde gebruiker
  
 

Join Datum: maart 2009
Posten: 3
Bedankt

Dankzij Joyeg
  #5 (permalink)  
Old 03-18-2009
methyl methyl is offline
Geregistreerde gebruiker
  
 

Join Datum: maart 2008
Berichten: 1184
Welke versie van Unix / Linux?
uname-a

Welke schaal? Is dit "sh", "ksh", "bash" of wat?
echo $ SHELL

Gelieve aan te tonen een voorbeeld van wat de output van het script eruit moeten zien en aangeven of u rekenen directory grote alsmede ten aanzien van de grootte bestand per gebruiker totaal.

Gelieve te vermelden of er submappen in de map die u wilt analyseren.
  #6 (permalink)  
Old 03-18-2009
angad.makkar angad.makkar is offline
Geregistreerde gebruiker
  
 

Join Datum: maart 2009
Posts: 16
Thumbs up Dit werkt ....

Hi Joyeg ....

Probeer dit uit:

Code:
#!/bin/bash

declare -a name_arr
declare -a size_arr

i=0 
for files in `ls`
do
   name=`ls -l $files | awk '{print $3}'`
   size=`ls -l $files | awk '{print $5}'`

   if [ $i -eq 0 ]
   then
      name_arr[$i]=`echo $name`
      size_arr[$i]=`echo $size`
      i=`expr $i + 1`
   else
      j=0
      while [ $j -lt $i ]
      do
         if [ "${name_arr[$j]}" = "$name" ]
         then
	    size_arr[$j]=`expr ${size_arr[$j]} + $size`
	    break
         else
	    name_arr[$i]=`echo $name`
	    size_arr[$i]=`echo $size`
	    i=`expr $i + 1`
         fi
         j=`expr $j + 1`
      done
   fi
done

j=0
while [ $j -lt $i ]
do
	echo "${name_arr[$j]} : ${size_arr[$j]}"
	j=`expr $j + 1`
done

Lemme know incase van enig probleem


Ook voor uw verklaren fout, probeer het uitvoeren van uw script in bash-shell.
Closed Thread

Bladwijzers

Thread Tools Zoeken in deze Thread
Zoeken in deze Thread:

Uitgebreid zoeken
Display Modes Beoordeel deze draad
Beoordeel deze draad:

Posting Regels
Jij mag niet Post Nieuwe threads
Jij mag niet na antwoorden
Jij mag niet post attachments
Jij mag niet bewerk uw berichten

BB code is Aan
Smilies zijn Aan
[IMG] code Aan
HTML-code is Uit
Trackbacks zijn Aan
Pingbacks zijn Aan
Refbacks zijn Aan




Alle tijden zijn GMT -4. Het is nu 03:39 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Vertalingen Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
De Unix-en Linux Forums Copyright © 1993-2009. Alle rechten Reserved.Ad Beheer door RedTyger

Content Relevante URL's door vBSEO 3.2.0