Domovská » jak » Proč lidé používají příkaz echo při instalaci softwaru v systému Linux?

    Proč lidé používají příkaz echo při instalaci softwaru v systému Linux?

    Pokud používáte systém Linux, pak se mnoho příkazů a jejich variant může zdát trochu matoucí. Vezměte například příkaz "echo". Proč ji lidé používají při instalaci softwaru? Dnešní příspěvek typu SuperUser Q & A má odpověď na novou otázku uživatelů Linuxu.

    Dnešní zasedání Otázky a odpovědi nás přichází s laskavým svolením SuperUser - podřízené rozdělení Stack Exchange, které je založeno na komunitě prostřednictvím skupin webových stránek.

    Otázka

    Čtečka SuperUser PallavBakshi chce vědět, proč lidé při instalaci softwaru v Linuxu používají příkaz "echo":

    Jsem nový počítačový svět. Při instalaci ROS Indigo, první krok řekl, že bych měl použít následující kód:

    • sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $ (lsb_release -sc) hlavní"> /etc/apt/sources.list.d/ros-latest.list "

    Proč lidé v této souvislosti používají příkaz "echo" spolu s "sh -c"? Viděl jsem příkaz "echo" použitý v jiných procesech instalace také.

    Odkazy, které jsem viděl

    Co přesně je příkaz "sh"?

    Ubuntu Instalace systému ROS Indigo

    Proč lidé při instalaci softwaru v Linuxu používají příkaz "echo"?

    Odpověď

    Příspěvek SuperUser Fleet Command má pro nás odpověď:

    Funkce příkazu "echo" je obvykle zobrazování řetězce (kus textu) na konzole. Tentokrát se však po příkazu echo přidá znak (větší než)>, který přesměruje jeho výstup na textový soubor umístěný v /etc/apt/sources.list.d/ros-latest.list.

    V podstatě celý tento příkaz zapíše textový text do textového souboru. Nyní přichází tichá část:

    Řetězec napsaný do souboru může být pro každý počítač jiný. Část, $ (lsb_release -sc), je vyřešen (změněn na něco jiného) při spuštění příkazu "echo".

    Můžete se otevřít /etc/apt/sources.list.d/ros-latest.list v textovém editoru před a po příkazu prohlédněte změny pro sebe. Nezapomeňte, že tento soubor pravděpodobně neexistuje před použitím tohoto příkazu.


    Musíte něco přidat k vysvětlení? Vyjměte v komentářích. Chcete se dozvědět více odpovědí od ostatních uživatelů technologie Stack Exchange? Podívejte se na celý diskusní příspěvek zde.