#include #include static void usage(void) { fmt·fprint(2,"usage: %s [-d] path [suffix]\n", argv0); exits("usage"); } int main(int argc, char *argv[]) { int d; long n; intptr x; char *p, *s; ARGBEGIN{ case 'd': d = 1; break; default: usage(); }ARGEND; if(argc < 1 || argc > 2) usage(); p = d ? fs·dirname(argv[0]) : fs·basename(argv[0]); if(argc>1){ n = str·len(p)-str·len(argv[1]); if(n >= 0 && str·compare(p+n, argv[1])==0) p[n] = 0; } sys·write(1,p,str·len(p),&x); return 0; }