I would like to have a command line based OS, I don't want to use a GUI, in my case it would be enough to just have a command line based OS, so the system can be faster and tinier. How can I create customized Debian before I burn it to an SD card?
If you're prepared to use Arch instead, then you can download it and mount it locally as a loopback device, on your Arch desktop PC. You can then use your desktop's copy of pacman to remove all the packages you don't want from the RasPi image.
Once that's done you can create an image just the size you want, and copy onto it the files from your cut-down version of Arch.
But note that Arch ARM doesn't actually take up the 2GB image that you download, most of that is free space. The system only takes up about 490MB, but you can certainly reduce that if you remove packages you won't use.
If you don't have an Arch desktop PC, or you want to stick with Debian, the easiest way (avoiding emulators) is to write it to a large SD card, then boot into it and remove all the packages you don't want. When it's down to the size you require, put the SD card back into your PC and copy the distro onto the small SD card you want to use permanently.