In the .json file for bookshelves you can see what you have to call the textures:
{
"parent": "block/cube_column",
"textures": {
"end": "block/oak_planks",
"side": "block/bookshelf"
}
}
That is, the bookshelf texture itself has to be called "bookshelf.png", and has to be located in a folder called "block" and you have to have the top and bottom texture called "oak_planks.png"" which also has to be located in the "block" folder. the folder directory should be
> (pack name) > assets > minecraft > textures > block > oak_planks.png
bookshelf.png