<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://mis.martin-simunek.cz/skins/common/feed.css?301"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="cs">
		<id>http://mis.martin-simunek.cz/index.php?action=history&amp;feed=atom&amp;title=Vyhodnocen%C3%AD_p%C5%99%C3%ADkaz%C5%AF</id>
		<title>Vyhodnocení příkazů - Historie editací</title>
		<link rel="self" type="application/atom+xml" href="http://mis.martin-simunek.cz/index.php?action=history&amp;feed=atom&amp;title=Vyhodnocen%C3%AD_p%C5%99%C3%ADkaz%C5%AF"/>
		<link rel="alternate" type="text/html" href="http://mis.martin-simunek.cz/index.php?title=Vyhodnocen%C3%AD_p%C5%99%C3%ADkaz%C5%AF&amp;action=history"/>
		<updated>2026-04-18T21:47:53Z</updated>
		<subtitle>Historie editací této stránky</subtitle>
		<generator>MediaWiki 1.17.0</generator>

	<entry>
		<id>http://mis.martin-simunek.cz/index.php?title=Vyhodnocen%C3%AD_p%C5%99%C3%ADkaz%C5%AF&amp;diff=4754&amp;oldid=prev</id>
		<title>Spravce: Osamostatnění stránky.</title>
		<link rel="alternate" type="text/html" href="http://mis.martin-simunek.cz/index.php?title=Vyhodnocen%C3%AD_p%C5%99%C3%ADkaz%C5%AF&amp;diff=4754&amp;oldid=prev"/>
				<updated>2023-01-12T00:34:02Z</updated>
		
		<summary type="html">&lt;p&gt;Osamostatnění stránky.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nová stránka&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:VSE]][[Category:Informatika]][[Category:OSY]][[Category:Linux]][[Category:Příkazový řádek]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vyhodnocování příkazového řádku v shellu ==&lt;br /&gt;
* Proměnné a další speciální znaky v&amp;amp;nbsp;Linuxu nahrazuje shell. Příkazy tedy tyto znaky vůbec nedostanou. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;Priklad&amp;quot;&amp;gt;&lt;br /&gt;
Pokud například zapíšeme v&amp;amp;nbsp;příkazovém řádku:&lt;br /&gt;
 mv *.txt ~/$TARGET&lt;br /&gt;
Shell provede následující nahrazení:&lt;br /&gt;
# &amp;lt;code&amp;gt;~&amp;lt;/code&amp;gt; nahradí za domovský adresář&lt;br /&gt;
# &amp;lt;code&amp;gt;$TARGET&amp;lt;/code&amp;gt; nahradí za obsah proměnné&lt;br /&gt;
# &amp;lt;code&amp;gt;*.txt&amp;lt;/code&amp;gt; nahradí za seznam všech souborů v&amp;amp;nbsp;adresáři s&amp;amp;nbsp;příponou .txt.&lt;br /&gt;
Pokud příkaz spustí uživatel &amp;lt;code&amp;gt;student&amp;lt;/code&amp;gt;, obsahem proměnné &amp;lt;code&amp;gt;TARGET&amp;lt;/code&amp;gt; je text &amp;lt;code&amp;gt;backup&amp;lt;/code&amp;gt; a v&amp;amp;nbsp;aktuálním adresáři mají příponu .txt jen soubory &amp;lt;code&amp;gt;a.txt&amp;lt;/code&amp;gt; a &amp;lt;code&amp;gt;b.txt&amp;lt;/code&amp;gt;, spustí se příkaz:&lt;br /&gt;
 mv a.txt b.txt /home/student/backup&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;Poznamka&amp;quot;&amp;gt;&lt;br /&gt;
Ve Windows metaznaky dostávají příkazy bez nahrazování. Proto lze na Windows psát:&lt;br /&gt;
 ren *.jpg *.bkp.jpg&lt;br /&gt;
V&amp;amp;nbsp;Linuxu bychom toto museli řešit s&amp;amp;nbsp;využitím cyklu.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Pořadí nahrazování&lt;br /&gt;
# ~&lt;br /&gt;
# nahrazení proměnných&lt;br /&gt;
# nahrazení *, ?&lt;br /&gt;
&lt;br /&gt;
== Nahrazené hodnoty se dále nenahrazují ==&lt;br /&gt;
Jednou nahrazené hodnoty již dalším nahrazováním neprochází, i když obsahují speciální znaky&lt;br /&gt;
&amp;lt;div class=&amp;quot;Priklad&amp;quot;&amp;gt;&lt;br /&gt;
Příklady:&lt;br /&gt;
 FILES=&amp;quot;*.txt&amp;quot;&lt;br /&gt;
 ls $FILES&lt;br /&gt;
&amp;amp;rarr; vypíše: &amp;lt;code&amp;gt;ls: nelze přistoupit k '*.txt'&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A ze stejného důvodu:&lt;br /&gt;
 touch '$POKUS'&lt;br /&gt;
 echo *POK*&lt;br /&gt;
&amp;amp;rarr; vypíše: &amp;lt;code&amp;gt;$POKUS&amp;lt;/code&amp;gt; (Nedosadí se hodnota proměnné POKUS.)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A také:&lt;br /&gt;
 TARGET=&amp;quot;~/BACKUP&amp;quot;&lt;br /&gt;
 cp data.txt $TARGET&lt;br /&gt;
&amp;amp;rarr; vypíše chybu a nebude fungovat, protože se bude snažit zapisovat do složky &amp;lt;code&amp;gt;~/BACKUP&amp;lt;/code&amp;gt; (vlnovka a lomítko budou součástí názvu)&lt;br /&gt;
Přitom ale:&lt;br /&gt;
 TARGET=~/BACKUP&lt;br /&gt;
 cp data.txt $TARGET&lt;br /&gt;
&amp;amp;rarr; fungovat bude (pokud existuje složka &amp;lt;code&amp;gt;BACKUP&amp;lt;/code&amp;gt; ve vaší domovské složce)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Vložení speciálních znaků do příkazů ==&lt;br /&gt;
* Pokud chceme do textu vložit speciální znaky, můžeme použít zpětné lomítko, uvozovky nebo apostrofy (&amp;lt;code&amp;gt;\&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;&amp;quot;&amp;lt;/code&amp;gt; nebo &amp;lt;code&amp;gt;'&amp;lt;/code&amp;gt;).&lt;br /&gt;
* Zpětné lomítko &amp;lt;code&amp;gt;\&amp;lt;/code&amp;gt;: ruší speciální význam dalšího znaku.&lt;br /&gt;
* Uvozovky &amp;lt;code&amp;gt;&amp;quot;&amp;lt;/code&amp;gt;: blokují význam speciálních znaků, ale doplňují se hodnoty proměnných.&lt;br /&gt;
* Apostrofy &amp;lt;code&amp;gt;'&amp;lt;/code&amp;gt;: blokují význam všech speciálních znaků včetně &amp;lt;code&amp;gt;$&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;Priklad&amp;quot;&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;student@computer:~$ touch \$USER&amp;lt;/code&amp;gt; &amp;amp;rarr; Vytvoří soubor s&amp;amp;nbsp;názvem &amp;lt;code&amp;gt;$USER&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;student@computer:~$ touch a\ b&amp;lt;/code&amp;gt; &amp;amp;rarr; Vytvoří soubor s&amp;amp;nbsp;názvem &amp;lt;code&amp;gt;a b&amp;lt;/code&amp;gt; (v&amp;amp;nbsp;názvu je mezera)&lt;br /&gt;
* &amp;lt;code&amp;gt;student@computer:~$ touch a\\b&amp;lt;/code&amp;gt; &amp;amp;rarr; Vytvoří soubor s&amp;amp;nbsp;názvem &amp;lt;code&amp;gt;a\b&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;student@computer:~$ echo ~/$USER&amp;lt;/code&amp;gt; &amp;amp;rarr; /home/student/student&lt;br /&gt;
* &amp;lt;code&amp;gt;student@computer:~$ echo &amp;quot;~/$USER&amp;quot;&amp;lt;/code&amp;gt; &amp;amp;rarr; ~/student&lt;br /&gt;
* &amp;lt;code&amp;gt;student@computer:~$ echo '~/$USER'&amp;lt;/code&amp;gt; &amp;amp;rarr; ~/$USER&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;Poznamka&amp;quot;&amp;gt;&lt;br /&gt;
'''Obecně nedoporučujeme používat v&amp;amp;nbsp;názvech souborů speciální znaky!''' &lt;br /&gt;
&lt;br /&gt;
Může se ale stát, že takový soubor vznikne například přenosem z&amp;amp;nbsp;jiného operačního systému, kde dané znaky nejsou speciálními znaky.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Související stránky ==&lt;br /&gt;
* [[Proměnné prostředí]]&lt;/div&gt;</summary>
		<author><name>Spravce</name></author>	</entry>

	</feed>