User:Vkolesni
From ICO wiki
Bash quest
Luua skript, mis otsiks etteantud kataloogist ühesuguseid faile. Failide võrdlemine võiks toimuda md5sum tasandil. Loodav skript peaks olema suuteline leidma kõikide ühesuguste failide asukoha ja kuvama ka nende nimed.
Näideks failidel võivad olla erinevad nimed, kuid sama sisu :
fca209683890bb2a02c60535ca82f920 joujou
fca209683890bb2a02c60535ca82f920 tere
fca209683890bb2a02c60535ca82f920 hello
fca209683890bb2a02c60535ca82f920 asd
Quest8 lahendus
#!/bin/bash
#Autor: Vladimir Kolesnik, vkolesni@itcollege.ee
#Versioon 0.5
#Antud skript otsib etteantud kataloogist ühesuguseid faile. Failide võrdlemine toimub md5sum tasandil.
#Skript leiab ja kuvab kõikide ühusuguste failide asukoha ja nimed.
#Skripti kasutamiseks liiguge kataloogise, kus on vaja otsida ühesuguseid faile ja käivitage skripti sudo õigusega
#kontrollib, kas on piisavalt õigusi skripti käivitamiseks
if [ $UID -ne 0 ]; then
echo "Käivita skripti $(basename $0) juurkasutaja õigustes: sudo"
exit 1
fi
#Otsimine ainult faile (-type f), mida ei ole tühjad(-not -empty), ning määratleme print formati ("%s\n")
find -not -empty -type f -printf "%s\n" |
#Sorteerime descending (reverse) numeric järgi
sort -rn |
#Ainult printimine dublicated unikaalsed faile
uniq -d |
#Kasutame käsu "xargs" selleks, et asendama ("I") {} argumenti listiga
xargs -I{} -n1 find -type f -size {}c -print0 |
#Võtame ainult md5summi, mis ei sisalda komasi ega tühikuid ("-0")
xargs -0 md5sum |
#Sorteerimine
sort |
#Võtame ainult 32 numbri ("-w32") võrdlemiseks
uniq -w32 --all-repeated=separate
PowerShell
#***************************************************************** # # Skripti nimi: malu_check.ps1 # Versioon: 1.0 # Autor: Vladimir Kolesnik # Kuupäev: 17. mai, 2011 # # Selgitus: Antud skript kõike protsessi mille mälu on üle 1MB # ja vormistab sisendi faili HTML kujul # #***************************************************************** # Võtame protsesside nimekirja Get-Process | # Võtame ainult neid protsesse, kus mälu on üle 1MB Where-Object {$_.WS -ge 1048576} | # Sorteerime suuremast väiksemaks Sort-Object WS –desc | # Vormistame HTML kujul C:\www kaustas ConvertTo-html -property Name,WS > C:\www