Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
88
Task/Unix-ls/Peri/unix-ls.peri
Normal file
88
Task/Unix-ls/Peri/unix-ls.peri
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
###sysinclude standard.uh
|
||||
###sysinclude args.uh
|
||||
###sysinclude io.uh
|
||||
###sysinclude str.uh
|
||||
|
||||
###define COLORS
|
||||
// delete the COLORS directive above if you do not want colored output!
|
||||
#g argc 3 < { "." }{ 2 argv } sto mypath
|
||||
@mypath 'd inv istrue { ."The given directory doesn't exist! Exited.\n" end }
|
||||
@mypath getdir { ."Cannot load the dir! Aborted.\n" end } sto mydir
|
||||
'- 90 *... sto vonal
|
||||
'. 60 *... sto points
|
||||
|
||||
@mydir ~d {
|
||||
."Directories:\n"
|
||||
@mydir ~d {{ #s
|
||||
@mydir 'd {{}} octalrights dup print inv mem SPACE
|
||||
@mydir 'd {{}} getfilename dup 67 mc print SPACE drop
|
||||
@mydir 'd {{}} groupname ': !+
|
||||
@mydir 'd {{}} ownername dup sto temp + dup 10 mc print inv mem @temp inv mem
|
||||
@mydir 'd {{}} mtime dup print inv mem
|
||||
NL }}
|
||||
@points sprintnl
|
||||
@mydir ~d { ."Total: " @mydir ~d #g print ." subdirectories.\n" }
|
||||
@vonal sprintnl
|
||||
}
|
||||
|
||||
@mydir ~r {
|
||||
."Regular files:\n"
|
||||
@mydir ~r {{ #s
|
||||
@mydir 'r {{}} octalrights dup print inv mem SPACE
|
||||
@mydir 'r {{}} getfilesize sbr §ifcolored
|
||||
@mydir 'r {{}} executable { ." >" }{ ." " } SPACE
|
||||
@mydir 'r {{}} getfilename dup 67 mc print SPACE drop
|
||||
@mydir 'r {{}} groupname ': !+
|
||||
@mydir 'r {{}} ownername dup sto temp + dup 10 mc print inv mem @temp inv mem
|
||||
@mydir 'r {{}} mtime dup print inv mem
|
||||
NL }}
|
||||
@points sprintnl
|
||||
@mydir ~r { ."Total: " @mydir ~r #g print ." regular files. "
|
||||
."TotalSize = " @mydir 'r totalsize sbr §ifcolored NL
|
||||
}
|
||||
@vonal sprintnl
|
||||
}
|
||||
@mydir ~L {
|
||||
."Symlinks:\n"
|
||||
@mydir ~L {{ #s
|
||||
@mydir 'L {{}} octalrights dup print inv mem SPACE
|
||||
@mydir 'L {{}} executable { .">" }{ SPACE } SPACE
|
||||
@mydir 'L {{}} getfilename dup 67 mc print SPACE drop
|
||||
@mydir 'L {{}} broken { ."--->" }{ ."===>" } SPACE
|
||||
@mydir 'L {{}} destination dup 30 mc print drop
|
||||
NL }}
|
||||
@points sprintnl
|
||||
@mydir ~L { ."Total: " @mydir ~L #g print ." symlinks.\n"
|
||||
}
|
||||
}
|
||||
@vonal sprintnl
|
||||
."Size, alltogether = " @mydir alltotal sbr §ifcolored NL
|
||||
@vonal sprintnl
|
||||
|
||||
|
||||
@mydir inv mem
|
||||
|
||||
."free spaces: /* Total size of the filesystem is : " @mypath filesystemsize dup sto filsize sbr §ifcolored ." */\n"
|
||||
." for non-privilegized use: " @mypath freenonpriv dup sbr §ifcolored
|
||||
#g 100 * @filsize / ." ( " print ."% ) " NL
|
||||
." All available free space: " @mypath totalfree dup sbr §ifcolored
|
||||
#g 100 * @filsize / ." ( " print ."% ) " NL
|
||||
@vonal inv mem
|
||||
end
|
||||
|
||||
ifcolored:
|
||||
###ifdef COLORS
|
||||
coloredsize
|
||||
###endif
|
||||
###ifndef COLORS
|
||||
#g !(#s) 21 >|
|
||||
###endif
|
||||
dup sprint inv mem
|
||||
rts
|
||||
|
||||
{ „filsize” }
|
||||
{ „mydir” }
|
||||
{ „mypath” }
|
||||
{ „temp” }
|
||||
{ „vonal” }
|
||||
{ „points” }
|
||||
Loading…
Add table
Add a link
Reference in a new issue