echo (kommando)

echo började inom Multics. Efter att den programmerats i C av Doug McIlroy som en ”fingerövning” och visat sig vara användbar, blev den en del av Version 2 Unix. echo -n i version 7 ersatte prompt, (som beter sig som echo men utan att avsluta dess produktion med en linjeavgränsare).

På PWB / UNIX och senare startade Unix System III echo att expandera C-escape-sekvenser som \n med den anmärkningsvärda skillnaden att oktala flykt-sekvenser uttrycktes som \0ooo istället för \ooo i C.

Åttonde utgåvan Unix echo gjorde bara escape-expansionen när den passerade ett -e -alternativ, och det beteendet kopierades av några andra implementeringar som t.ex. det inbyggda echo -kommandot för Bash eller zsh och GNU echo.

På MS-DOS är kommandot tillgängligt i version 2 och senare.

Numera finns flera inkompatibla implementeringar av echo på olika operativsystem (ofta flera på samma system), några av dem utvidgar escape-sekvenser som standard, andra inte, andra accepterar alternativ (listan som varierar med implementeringar), andra inte.

POSIX-specifikationen för echo lämnar beteendet ospecificerat om det första argumentet är -n eller något argument innehåller bakåtvänd snedstreck medan Unix-specifikationen (XSI-alternativet i POSIX) mandatar expansion av (vissa) sekvenser och tillåter inte bearbetning av alternativ. I praktiken är många echo -implementationer inte kompatibla i standardmiljön.

På grund av dessa beteendevariationer echo betraktas som ett icke-bärbart kommando på Unix-liknande system och printf -kommandot (där tillgängligt, introducerat av Nionde upplagan Unix) föredras istället.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *