>Is there any way I can use PACK command without setting EXCLUSIVE ON?
No theory (*).
When you pack, everything in a table is made afresh - table itself is copied to a new file (only not deleted records, that is), all the index tags are created from scratch, then the old table (and its cdx and fpt) are deleted and the new table is renamed to old, and then reopened. If anyone else had it open, it would have to be closed (with buffers flushed or reverted - but cleaned up anywhere) right underneath them, and reopened when done (and with large tables on slower machines it can take time). Should the buffers should be written down or reverted? No matter what answer we choose (write, revert, leave dirty or ask each user what to do and hope they'll answer soon), we'd be getting in trouble. Which is why packing is done when alone.
----
for lurkers out there, "there's no theory" is short for "there's not even a theoretical chance", and I actually hope I'm not too much out of phase with the current slang at home, i.e. that the expression is not hopelessly out of fashion