El idioma español y, en su nombre, la Gramática española son los que dictan que eso sea así.
Partamos de que "línea" y "comando" son dos sustantivos. La gramática inglesa dicta que un sustantivo puede adjetivizar a otro. Así, en "command line" el sustantivo command está adjetivizando a line. Sería como si en español dijéramos "línea comandesca". Sin embargo, la gramática española dice que cuando dos sustantivos están relacionados, afectando el uno al otro, se deben relacionar con el empleo de la preposición de, anteponiendo el sustantivo más general seguido del que crea el caso particular:
Bocata de chorizo.
Dolor de barriga.
Bolso de cuero.
Pañuelo de bolsillo.
Etc.
Cada uno de estos ejemplos en inglés se podría expresar con un sustantivo adjetivizado: chorizo sandwich, stomach ache, leather bag, etc. Pero no es así en español: no decimos bocata choricero, dolor barrigoso ni bolso encuerado. Del mismo modo, no decimos línea comandesca como propuse, sino línea de comandos (primero línea como sustantivo general, y luego de comandos para especificar el tipo particular de línea).
En general, cada idioma tiene sus normas dictadas por la gramática que hay que seguir, y es importante aprenderlas. Por ejemplo, si todavía habláramos latín igual la frase se habría aproximado un poco más al inglés, dado que sería algo así como "līnea ordinātiōnum"1, con el sustantivo ordinātiō conjugado en genitivo plural. Aún así tendrías que colocar primero el sustantivo general, igual que en español, y luego el adjetivizado. Y en esperanto, idioma de invención relativamente reciente, se dice komandlinia, muy cercano a "command line", con el sustantivo adjetivizante unido al general.
1 En latín en realidad es linea imperandi, "línea que da órdenes".