AuroraSloan / gnl

A program reads from a file and prints to STDOUT line by line

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

gnl

This program reads from a file (or stdin) line by line and prints to the screen.
It will return 1 when a line has been successfully read, 0 if the end of file has been reached, and -1 if there was an error.

For the get_next_line portion of this project Global variables were not allowed and the only functions allowed were read, malloc, and free.

Buffer size is defined during compilation and can be set to any number from 1 to INT_MAX.

Standard library functions were recoded and modified for this project.


Installation

git clone https://github.com/AuroraSloan/gnl.git

Usage

First, run the comp.sh file.

bash comp.sh

The program will automatically read the whole file before moving to the next file.
If you want to read one line at a time from each file, run the comp.sh file with -ll.

bash comp.sh -ll

next simply use the executable gnl along with the file/s you want to read.

./gnl a.txt

or

./gnl a.txt b.txt

If no file is specified, the program will begin to read from stdin. Type Ctrl + d to signal the end of file.

To change the buffer size, open the .sh file and change the number in BUFF=32 to any number 1 to 2147483647.

Coming soon...

Ability to choose which line will be read from a file.

About

A program reads from a file and prints to STDOUT line by line


Languages

Language:C 93.8%Language:Makefile 4.8%Language:Shell 1.4%