xref: /original-bsd/sys/stand.att/ls.c (revision f8a6ea8f)
1 /*
2  * Copyright (c) 1982 Regents of the University of California.
3  * All rights reserved.  The Berkeley software License Agreement
4  * specifies the terms and conditions for redistribution.
5  *
6  *	@(#)ls.c	6.2 (Berkeley) 06/08/85
7  */
8 
9 #include "../h/param.h"
10 #include "../h/inode.h"
11 #include "../h/ino.h"
12 #include "../h/dir.h"
13 #include "saio.h"
14 
15 char line[100];
16 
17 main()
18 {
19 	int i;
20 
21 	printf("ls\n");
22 	do  {
23 		printf(": "); gets(line);
24 		i = open(line, 0);
25 	} while (i < 0);
26 
27 	ls(i);
28 }
29 
30 ls(io)
31 register io;
32 {
33 	struct direct d;
34 	register i;
35 
36 	while (read(io, (char *)&d, sizeof d) == sizeof d) {
37 		if (d.d_ino == 0)
38 			continue;
39 		printf("%d\t", d.d_ino);
40 		for (i=0; i<DIRSIZ; i++) {
41 			if (d.d_name[i] == 0)
42 				break;
43 			printf("%c", d.d_name[i]);
44 		}
45 		printf("\n");
46 	}
47 }
48