What exactly do you mean by "control file" ? The shell script or bcp format file ?

bcp has a format file. Check the Sybase documentation; look at the Utility Guide; then bcp; then format file.

As long as the columns in the fixed width (or variable width) data file match the table, you do not need a bcp format file for loading it into a db using bcp. Such things as non-standard field separators, record terminators, etc are all handled via command line options. You only need a format file if the columns in the data file (in or out) are scrambled or the datatypes are not matched.

Even then, is it easier to start out with:

bcp mytable out -F1 -L10 -f mytable.fmt

which will create a format file; then you can edit it to suit.

For a shell script we need more information, assuming you want to cut, chop, sort, etc. The command line to launch bcp is easy enough, so I do not think that is what you are seeking.