AFAIK the answer to both is No.
The frame number padding zeros can be configured by adding
# to the filename:
From the wiki page on CLI rendering:
-o or --render-output <path>
Set the render path and file name.
Use // at the start of the path to
render relative to the blend file.
The # characters are replaced by the frame number, and used to define zero padding.
ani_##_test.png becomes ani_01_test.png
test-######.png becomes test-000001.png
When the filename does not contain #, The suffix #### is added to the filename
The frame number will be added at the end of the filename.
eg: blender -b foobar.blend -o //render_ -F PNG -x 1 -a
//render_ becomes //render_####, writing frames as //render_0001.png//
This works in the GUI too:
So the above becomes
# = no padding. (i.e.
However, I don't think there is a way to completely remove the frame number from the file name through blender, though it's really not hard to remove it later.
As for the blendfile name in the Base Path:
You could write a python script to set the Base Path of all File Output nodes to the blendfile name:
# Get file name:
filename = bpy.path.basename(bpy.context.blend_data.filepath)
# Remove .blend extension:
filename = os.path.splitext(filename)
# set the base path for all file output nodes to filename:
for scene in bpy.data.scenes:
for node in scene.node_tree.nodes:
if node.type == 'OUTPUT_FILE':
node.base_path = "//" + filename