Als Linux nieuw voor je is, kunnen veel van de commando’s en variaties daarop een beetje verwarrend lijken. Neem bijvoorbeeld het commando “echo”. Waarom gebruiken mensen het bij het installeren van software? De SuperUser Q & A-post van vandaag bevat het antwoord op de vraag van een nieuwe Linux-gebruiker.
De vraag- en antwoordsessie van vandaag komt tot ons dankzij SuperUser – een onderdeel van Stack Exchange, een door de gemeenschap aangestuurde groep van Q & A-websites.
De vraag
SuperUser-lezer PallavBakshi wil weten waarom mensen het “echo” -commando gebruiken bij het installeren van software onder Linux:
Ik ben nieuw in de computerwereld. Tijdens het installeren van ROS Indigo zei de eerste stap dat ik de volgende code moest gebruiken:
- sudo sh -c ‘echo “deb http://packages.ros.org/ros/ubuntu $ (lsb_release -sc) main”> /etc/apt/sources.list.d/ros-latest.list’
Waarom gebruiken mensen in deze context het “echo” -commando samen met “sh -c”? Ik heb het “echo” -commando ook in andere installatieprocessen gebruikt.
Links waar ik doorheen heb gekeken
Wat is precies het “sh” -commando?
Ubuntu-installatie van ROS Indigo
Waarom gebruiken mensen het “echo” -commando bij het installeren van software onder Linux?
Het antwoord
SuperUser-bijdrager Fleet Command heeft het antwoord voor ons:
Gewoonlijk is de functie van het “echo” -commando het weergeven van een string (stuk tekst) op de console. Maar deze keer wordt een (groter dan)> -teken toegevoegd na het echo-commando, waardoor de uitvoer wordt omgeleid naar een tekstbestand in /etc/apt/sources.list.d/ros-latest.list.
In feite schrijft dit hele commando een stuk tekst naar een tekstbestand. Nu komt hier het lastige gedeelte:
De tekenreeks die naar het bestand wordt geschreven, kan voor elke computer verschillen. Het onderdeel, $ (lsb_release -sc), wordt opgelost (veranderd in iets anders) wanneer het “echo” -commando wordt uitgevoerd.
Je kunt openen /etc/apt/sources.list.d/ros-latest.list in een teksteditor voor en na de opdracht om de wijzigingen zelf te zien. Houd er rekening mee dat het bestand mogelijk niet bestaat voordat u deze opdracht gebruikt.
Iets toe te voegen aan de uitleg? Geluid uit in de reacties. Wilt u meer antwoorden lezen van andere technisch onderlegde Stack Exchange-gebruikers? Bekijk hier de volledige discussiethread.