Produktivní.cz — rychleji každý den
Pro profesiUčiteléStudentiManažeřiMarketingVývojářiFreelanceřiRodiče

Tipy & triky · Workflow · Všude · ~2 min denně · 2 min čtení

Cestu k souboru neopisujte: přetáhněte ho do terminálu

Naposledy ověřeno:

Ilustrace k článku: Cestu k souboru neopisujte: přetáhněte ho do terminálu

Opisování cesty k souboru je nejnáchylnější činnost v terminálu: dlouhé názvy složek, mezery, diakritika — a jeden překlep znamená No such file or directory. Přitom existuje trik, který zná překvapivě málo lidí: soubor nebo složku stačí myší přetáhnout z Průzkumníka, Finderu či jiného správce souborů přímo do okna terminálu. Terminál na pozici kurzoru vloží úplnou cestu, a co je nejlepší, rovnou správně ošetřenou — mezery a speciální znaky uvozí nebo oescapuje za vás.

Jak na to

  1. Napište do terminálu začátek příkazu, třeba unzip (s mezerou na konci).
  2. Najděte soubor v Průzkumníku (Windows), Finderu (Mac) nebo správci souborů (Linux) a přetáhněte ho myší do okna terminálu.
  3. Na řádku se objeví celá cesta — například '/home/jana/Stažené/podklady k projektu.zip' — včetně uvozovek kolem mezer. Stiskněte Enter.
  4. Funguje to ve Windows Terminalu, v macOS Terminálu i iTermu a ve většině linuxových terminálů. Přetáhnout jde i složka — hodí se pro cd: napište cd , přetáhněte složku, Enter.
  5. Na Macu má trik ještě sourozence: když v jakékoli aplikaci vidíte soubor v otevřeném dialogu nebo okně, jeho cestu do terminálu dostanete i přes Cmd+Option+C ve Finderu.

Vzorová situace

Student potřebuje v terminálu spustit skript nad souborem, který mu přišel mailem: Výsledky měření – skupina B (finální verze).csv, uložený kdesi ve Stažených. Ručně tu cestu napsat prakticky nejde — mezery, pomlčka, závorky, diakritika, každý znak je past. Místo toho napíše python analyza.py , přetáhne soubor ze složky do terminálu a spustí. Deset vteřin, nula překlepů.

Stejný trik oceníte u příkazů, kde figurují dvě cesty najednou — třeba cp nebo ffmpeg: napíšete příkaz, přetáhnete zdrojový soubor, dopíšete cíl. A funguje to i s nástroji, které si o soubor řeknou interaktivně: kamkoli, kde terminál čeká na cestu, můžete místo psaní upustit soubor.

Hodí se vědět, že přetažení vloží jen text cesty — soubor se nikam nekopíruje ani nepřesouvá, takže se nemusíte bát, že si něco rozházíte. Terminál a grafický svět, které jinak žijí odděleně, si najednou podávají ruce.

Co vám to přinese

Odpadne nejčastější zdroj chyb při práci s terminálem — ručně opisované cesty. Soubory s mezerami a diakritikou v názvu přestanou být problém, protože uvozování řeší terminál sám. A snižuje se bariéra pro občasné uživatele: nemusíte umět tabulátorové doplňování ani pravidla uvozování, stačí umět táhnout myší — terminál se rázem stane přívětivějším i pro toho, kdo v něm tráví pět minut týdně.