1*219b2ee8SDavid du ColombierThis is an attempt to make the utilities specified in 2*219b2ee8SDavid du ColombierPOSIX 1002.3 available, assuming /$objtype/ape/bin 3*219b2ee8SDavid du Colombierand /lib/rc/ape are bound to /bin before the regular 4*219b2ee8SDavid du Colombierbin directories. 5*219b2ee8SDavid du Colombier 6*219b2ee8SDavid du ColombierHere's a brief description of the status of these commands. 7*219b2ee8SDavid du Colombier 8*219b2ee8SDavid du ColombierEXECUTION ENVIRONMENT UTILITIES 9*219b2ee8SDavid du Colombier 10*219b2ee8SDavid du Colombierawk Plan 9 awk. 11*219b2ee8SDavid du Colombier system() uses rc instead of sh. 12*219b2ee8SDavid du Colombier 13*219b2ee8SDavid du Colombierbasename POSIX conforming 14*219b2ee8SDavid du Colombier 15*219b2ee8SDavid du Colombierbc Plan 9 bc. 16*219b2ee8SDavid du Colombier 17*219b2ee8SDavid du Colombiercat Plan 9 cat. 18*219b2ee8SDavid du Colombier no -u option (for byte-at-at-time) 19*219b2ee8SDavid du Colombier 20*219b2ee8SDavid du Colombiercd shell builtins 21*219b2ee8SDavid du Colombier doesn't use $HOME or $CDPATH 22*219b2ee8SDavid du Colombier 23*219b2ee8SDavid du Colombierchgrp Plan 9 chgrp. 24*219b2ee8SDavid du Colombier no -R option (for recursive chgrp). 25*219b2ee8SDavid du Colombier only takes name, not number 26*219b2ee8SDavid du Colombier 27*219b2ee8SDavid du Colombier 28*219b2ee8SDavid du Colombierchmod Plan 9 chmod. 29*219b2ee8SDavid du Colombier no -R option (for recursive chmod). 30*219b2ee8SDavid du Colombier no s (setuid) and X (conditional x) perms. 31*219b2ee8SDavid du Colombier nonstandard a,l perms. 32*219b2ee8SDavid du Colombier 33*219b2ee8SDavid du Colombierchown Always prints 'Permission denied' and fails. 34*219b2ee8SDavid du Colombier 35*219b2ee8SDavid du Colombiercksum not implemented 36*219b2ee8SDavid du Colombier 37*219b2ee8SDavid du Colombiercmp Plan 9 cmp. 38*219b2ee8SDavid du Colombier nonstandard -L option 39*219b2ee8SDavid du Colombier no line number printed; hex instead of octal for bytes 40*219b2ee8SDavid du Colombier 41*219b2ee8SDavid du Colombiercomm Plan 9 comm. 42*219b2ee8SDavid du Colombier 43*219b2ee8SDavid du Colombiercommand not implemented 44*219b2ee8SDavid du Colombier 45*219b2ee8SDavid du Colombiercp Plan 9 cp. 46*219b2ee8SDavid du Colombier no -R and -r (recursive), -i (interactive), -p (preserve) options 47*219b2ee8SDavid du Colombier nonstandard -z option 48*219b2ee8SDavid du Colombier 49*219b2ee8SDavid du Colombiercut not implemented 50*219b2ee8SDavid du Colombier 51*219b2ee8SDavid du Colombierdate Plan 9 date. 52*219b2ee8SDavid du Colombier no format option 53*219b2ee8SDavid du Colombier nonstandard -n option 54*219b2ee8SDavid du Colombier 55*219b2ee8SDavid du Colombierdd Plan 9 dd. 56*219b2ee8SDavid du Colombier 57*219b2ee8SDavid du Colombierdiff Plan 9 diff. 58*219b2ee8SDavid du Colombier can't have both files directories 59*219b2ee8SDavid du Colombier no -r (recursive) option 60*219b2ee8SDavid du Colombier -c<n> instead of -c and -C <n> for context 61*219b2ee8SDavid du Colombier 62*219b2ee8SDavid du Colombierdirname POSIX conforming 63*219b2ee8SDavid du Colombier 64*219b2ee8SDavid du Colombierecho Plan 9 echo 65*219b2ee8SDavid du Colombier 66*219b2ee8SDavid du Colombiered Plan 9 ed 67*219b2ee8SDavid du Colombier nonstandard b,wq commands 68*219b2ee8SDavid du Colombier 69*219b2ee8SDavid du Colombierenv not implemented 70*219b2ee8SDavid du Colombier 71*219b2ee8SDavid du Colombierexpr V10 expr (seems to be like POSIX) 72*219b2ee8SDavid du Colombier 73*219b2ee8SDavid du Colombierfalse POSIX conforming 74*219b2ee8SDavid du Colombier 75*219b2ee8SDavid du Colombierfind not implemented 76*219b2ee8SDavid du Colombier 77*219b2ee8SDavid du Colombierfold not implemented 78*219b2ee8SDavid du Colombier 79*219b2ee8SDavid du Colombiergetconf not implemented 80*219b2ee8SDavid du Colombier 81*219b2ee8SDavid du Colombiergetopts not implemented 82*219b2ee8SDavid du Colombier 83*219b2ee8SDavid du Colombiergrep script calling Plan 9 grep -G 84*219b2ee8SDavid du Colombier s means q, should mean forget nonexistent files 85*219b2ee8SDavid du Colombier nonstandard 1,b,L,q options 86*219b2ee8SDavid du Colombier 87*219b2ee8SDavid du Colombierhead not implemented 88*219b2ee8SDavid du Colombier 89*219b2ee8SDavid du Colombierid not implemented 90*219b2ee8SDavid du Colombier 91*219b2ee8SDavid du Colombierjoin not implemented 92*219b2ee8SDavid du Colombier 93*219b2ee8SDavid du Colombierkill V10 kill 94*219b2ee8SDavid du Colombier no -s signalname, no -l arg 95*219b2ee8SDavid du Colombier 96*219b2ee8SDavid du Colombierln not implemented 97*219b2ee8SDavid du Colombier 98*219b2ee8SDavid du Colombierlocale not implemented 99*219b2ee8SDavid du Colombier 100*219b2ee8SDavid du Colombierlocaledef not implemented 101*219b2ee8SDavid du Colombier 102*219b2ee8SDavid du Colombierlogger not implemented 103*219b2ee8SDavid du Colombier 104*219b2ee8SDavid du Colombierlogname not implemented 105*219b2ee8SDavid du Colombier 106*219b2ee8SDavid du Colombierlp Plan 9 lp 107*219b2ee8SDavid du Colombier 108*219b2ee8SDavid du Colombierls Plan 9 ls 109*219b2ee8SDavid du Colombier 110*219b2ee8SDavid du Colombiermailx not implemented 111*219b2ee8SDavid du Colombier 112*219b2ee8SDavid du Colombiermkdir Plan 9 mkdir 113*219b2ee8SDavid du Colombier 114*219b2ee8SDavid du Colombiermkfifo not implemented 115*219b2ee8SDavid du Colombier 116*219b2ee8SDavid du Colombiermv Plan 9 mv 117*219b2ee8SDavid du Colombier 118*219b2ee8SDavid du Colombiernohup not implemented 119*219b2ee8SDavid du Colombier 120*219b2ee8SDavid du Colombierod not implemented 121*219b2ee8SDavid du Colombier 122*219b2ee8SDavid du Colombierpaste not implemented 123*219b2ee8SDavid du Colombier 124*219b2ee8SDavid du Colombierpathchk not implemented 125*219b2ee8SDavid du Colombier 126*219b2ee8SDavid du Colombierpax implemented 127*219b2ee8SDavid du Colombier 128*219b2ee8SDavid du Colombierpr Plan 9 pr 129*219b2ee8SDavid du Colombier 130*219b2ee8SDavid du Colombierprintf not implemented 131*219b2ee8SDavid du Colombier 132*219b2ee8SDavid du Colombierpwd Plan 9 pwd 133*219b2ee8SDavid du Colombier 134*219b2ee8SDavid du Colombierread shell builtin 135*219b2ee8SDavid du Colombier 136*219b2ee8SDavid du Colombierrm Plan 9 rm 137*219b2ee8SDavid du Colombier 138*219b2ee8SDavid du Colombierrmdir script 139*219b2ee8SDavid du Colombier no -p option 140*219b2ee8SDavid du Colombier 141*219b2ee8SDavid du Colombiersed v10 sed 142*219b2ee8SDavid du Colombier 143*219b2ee8SDavid du Colombiersh ksh93 -- POSIX compliant 144*219b2ee8SDavid du Colombier 145*219b2ee8SDavid du Colombiersleep Plan 9 sleep 146*219b2ee8SDavid du Colombier 147*219b2ee8SDavid du Colombiersort Plan 9 sort 148*219b2ee8SDavid du Colombier 149*219b2ee8SDavid du Colombierstty POSIX compliant (sort of) 150*219b2ee8SDavid du Colombier 151*219b2ee8SDavid du Colombiertail Plan 9 tail 152*219b2ee8SDavid du Colombier 153*219b2ee8SDavid du Colombiertee Plan 9 tee 154*219b2ee8SDavid du Colombier 155*219b2ee8SDavid du Colombiertest Plan 9 test (POSIX compliant); copied as [ 156*219b2ee8SDavid du Colombier 157*219b2ee8SDavid du Colombiertouch Plan 9 touch 158*219b2ee8SDavid du Colombier 159*219b2ee8SDavid du Colombiertr Plan 9 tr 160*219b2ee8SDavid du Colombier 161*219b2ee8SDavid du Colombiertrue POSIX compliant 162*219b2ee8SDavid du Colombier 163*219b2ee8SDavid du Colombierumask noop 164*219b2ee8SDavid du Colombier 165*219b2ee8SDavid du ColombierSOFTWARE DEVELOPMENT UTILITIES (OPTIONAL) 166*219b2ee8SDavid du Colombier 167*219b2ee8SDavid du Colombierar script to call Plan9 ar, after arg conversion 168*219b2ee8SDavid du Colombier 169*219b2ee8SDavid du Colombiermake V10 make 170*219b2ee8SDavid du Colombier 171*219b2ee8SDavid du Colombierstrip not implemented 172*219b2ee8SDavid du Colombier 173*219b2ee8SDavid du ColombierC LANGUAGE DEVELOPMENT UTILITIES OPTION 174*219b2ee8SDavid du Colombier 175*219b2ee8SDavid du Colombierc89 script to APE environment cc (also avaiable as cc) 176*219b2ee8SDavid du Colombier 177*219b2ee8SDavid du Colombierlex Plan 9 lex 178*219b2ee8SDavid du Colombier 179*219b2ee8SDavid du Colombieryacc script to Plan 9 yacc 180*219b2ee8SDavid du Colombier 181*219b2ee8SDavid du ColombierGeneral Bugs: 182*219b2ee8SDavid du ColombierThe environment variables LANG, LC_ALL, 183*219b2ee8SDavid du ColombierLC_CTYPE, and LC_MESSAGES are ignored. 184*219b2ee8SDavid du Colombier 185*219b2ee8SDavid du ColombierThe use of -- as an argument to stop option processing 186*219b2ee8SDavid du Colombieris generally not done. 187*219b2ee8SDavid du Colombier 188*219b2ee8SDavid du ColombierThe many 'not implemented' functions will be implemented 189*219b2ee8SDavid du Colombieras scripts using them show up. 190