Programování

10 základních tipů na příkazový řádek OS X pro pokročilé uživatele

Pro většinu běžných uživatelů je příkazový řádek OS X, ke kterému se přistupuje prostřednictvím aplikace Terminal, přinejmenším stejně temný a skličující jako příkazový řádek systému Windows, který se používá pouze v době extrémního nouze. Pro tyto uživatele je to obvykle situace, kdy se něco nevysvětlitelně pokazilo, a psaní tajemných příkazů do výzvy se zdá být jedinou nadějí na vyléčení. Samozřejmě s největší pravděpodobností skutečně restartují a launchd služba nebo mazání a plist soubor.

Pro ty, kteří znají prostředí Unix, je příkazový řádek nebo terminál mocným nástrojem, který lze použít k usnadnění mnoha systémových funkcí a interakcí. Protože OS X je postaven na jádru BSD, můžete přenést své fantastické jednorázové linky a přeskočit těžkopádné nástroje grafického uživatelského rozhraní, abyste mohli dělat jednoduché věci, jako je procházení adresářového stromu, mazání každého souboru staršího než 30 dnů nebo stahování seznamu souborů aktuální adresář, který obsahuje konkrétní textový řetězec. Ačkoli grafická rozhraní mohou zjednodušit mnoho úkolů, mohou také zkomplikovat další úkoly - a příkazový řádek přijde na záchranu.

OS X má skryté drahokamy, o kterých možná ani mocní uživatelé nevědí. Zde je seznam 10 užitečných nástrojů, které vám umožňují provádět na vašem počítači Mac mnoho funkcí z příkazového řádku. Všechny by vám měly připadat užitečné a alespoň v jednom případě dokonce zábavné.

1. pbcopy a pbpaste: Zkopírujte a vložte do / ze schránky

The pbcopy a pbtaste nástroje fungují ve shodě a umožňují přístup do a ze systémových schránek / pasteboardů z příkazového řádku. Pokud byste například chtěli vypsat všechny soubory v adresáři, které začínají písmenem „f“, a uložit tento seznam do schránky, zadejte následující:

$ ls f * | pbcopy

Boom - tento výstup lze poté vložit do jakékoli aplikace grafického uživatelského rozhraní.

Konverzace funguje podle očekávání. Pokud máte tento seznam souborů ve schránce z jiné aplikace, můžete jej na příkazovém řádku zpracovat pomocí pbpaste:

$ pbpaste | grep foo

Bude používat grep příkaz k extrahování pouze řádků obsahujících řetězec foo.

Pokud vás vaše práce zavede do příkazového řádku ve shodě s aplikacemi GUI, tyto dva příkazy se vám určitě mohou hodit.

2. rsync: synchronizace souborů nebo adresářů

The rsync obslužný program může synchronizovat adresářové stromy mezi složkami ve stejném systému nebo mezi složkami v místním a vzdáleném systému. Je to nesmírně užitečné a je to bašta IT už mnoho let. Je také součástí OS X.

Pokud potřebujete zachovat dva adresářové stromy identické, použijte rsync v místním systému je triviální:

$ rsync -av / cesta / do / adresáře1 / / cesta / do / adresáře / 2 /

Tím zajistíte, že všechny soubory a soubory v / path / to / directory1 / také existují v / path / to / directory2 /. Chcete-li vytvořit adresáře přesně identické, budete muset poučit rsync také odstranit soubory v / path / to / directory2 /, které neexistují v / path / to / directory1 /:

$ rsync -av --delete / cesta / do / adresáře1 / / cesta / do / adresáře2 /

Pokud soubory uvedené během synchronizace nechcete, odeberte proti vlajka:

$ rsync -a --delete / cesta / do / adresáře1 / / cesta / do / adresáře2 /

Nebo pokud chcete zjistit, které soubory by byly zkopírovány nebo odstraněny, přidejte n:

$ rsync -avn - odstranit / cesta / do / adresáře1 / / cesta / do / adresáře2 /

Můžete také použít rsync mezi různými systémy, pokud to má vzdálený systém rsync nainstalován a běží SSH:

$ rsync -av --delete / path / to / directory1 / user @ remotesystem: / path / to / directory1 /

Zde je důležité lomítko. Naznačuje to rsync je číst soubory v rámci zdrojový adresář a synchronizovat je v rámci cílový adresář. Vynechejte zadní lomítko a rsync zkopíruje (připojí) zdrojový adresář do cílového adresáře a vytvoří další úroveň adresáře, kterou jste možná neměli v úmyslu.

Chcete-li povolit přístup SSH na počítači Mac, otevřete Předvolby systému, přejděte na Sdílení a vyberte Vzdálené přihlášení. Poté budete moci rsync na Mac přes SSH, nebo použijte SSH pro připojení k shellu v systému.

3. totéž: Kopírování nebo sloučení adresářů nebo archivů

The totéž příkaz je povrchně podobný rsync, ale ve skutečnosti je to velmi odlišný nástroj. Je součástí OS X již nějakou dobu, ale zůstává relativně neznámý.

Jako rsync, totéž lze použít ke kopírování stromů adresářů, zachování oprávnění, vlastnictví a metadat. Tím pádem:

$ ditto / cesta / k / zdroji / cesta / k / cíli

Pokud cílový adresář neexistuje, totéž vytvoří přesnou kopii zdrojového adresáře. Pokud cílový adresář existuje, totéž sloučí zdrojový adresář s cílem a přepíše duplicitní názvy souborů. Můžete například použít totéž sloučit obsah dvou velkých adresářů obrázků do jedné vnořené adresářové struktury.

Ale totéž jde dále, protože může také vytvářet, extrahovat a manipulovat s archivy CPIO (Copy In, Copy Out) a Zip. Můžete zadat dokument kusovníku (bom), který to dokumentuje totéž použije k selektivnímu kopírování nebo sloučení totéž vynechat metadata během kopírování souboru, nebo dokonce instruovat totéž redukovat univerzální binární soubory na jednu konkrétní architekturu během operace.

The totéž obslužný program je poměrně složitý nástroj, který může být velmi užitečný při správném použití, ale může také vyžadovat určité experimenty, než plně pochopíte.

4. tmutil: Zálohujte a obnovujte pomocí nástroje Time Machine

Funkce Apple Time Machine je nesmírně užitečná, protože umožňuje uživatelům udržovat průběžné zálohy svých počítačů na externí disk, jako je NAS nebo USB. To znamená, že rozhraní „Star Wars“ může být těžkopádné, když se pokročilí uživatelé snaží procházet zálohy, a ovládací prvky v System Preferences jsou docela spartánské.

Naštěstí, tmutil je tam k vyplnění mezer, když to potřebujete.

Například zatímco grafické rozhraní Time Machine vám ukáže nejnovější zálohu, pokud chcete zobrazit všechny dostupné zálohy, spusťte následující:

$ tmutil listbackups

Zobrazí se seznam všech přístupných záloh aktuálního systému. Chcete-li zobrazit nejnovější zálohu, jednoduše zadejte následující:

$ tmutil latestbackup

Můžete také použít tmutil spouštět a zastavovat zálohy, porovnávat zálohy navzájem, analyzovat množství změn mezi zálohami, zdědit zálohy, které by mohly být vytvořeny ze staršího systému, zobrazit informace o cílech zálohování, přidružit a zrušit přidružení cílů záloh, a dokonce obnovit soubory z záloha.

V zásadě jsou všechny úlohy související se zálohováním, které chybí pokročilému uživateli v grafickém uživatelském rozhraní tmutil. Pokud jste v zoufalé situaci a potřebujete se ponořit hlouběji do záloh, abyste něco opravili, může to být záchranář.

5. fs_usage: Zobrazení aktivity systému souborů

Pokud jste někdy byli v pozici, kdy váš disk mlátí a chcete rychlý pohled z příkazového řádku na to, které systémové procesy způsobují zmatek, fs_usage má záda. Tento nástroj poskytuje neustálý proud informací v reálném čase o tom, které procesy přistupují k systému souborů.

Ve výchozím stavu, fs_usage osvobozuje od výstupu několik procesů, včetně Terminal a Secure Shell (sshd). Můžeš běžet fs_usage v Terminálu takto:

$ sudo fs_usage

Pokud používáte jinou terminálovou aplikaci, budete ji muset vyjmout z výstupu pomocí -E přepínač:

$ sudo fs_usage -e iTerm

Výše uvedené osvobodí obě fs_usage a z výstupu aplikace iTerm.

Kromě poskytování celosystémového pohledu fs_usage může profilovat jednotlivé procesy, například Google Chrome:

$ sudo fs_usage "Google Chrome"

6. drutil a hdiutil: Vypalování disků CD a DVD a manipulace s obrazy disků

Pokud jste někdy chtěli rychle a snadno vypálit datové DVD nebo zvukové CD, drutil je pro tebe. S ním můžete vypálit adresářový strom na CD jediným řádkem:

$ drutil vypalování / cesta / do / složky

Chcete-li vypálit zvukové CD, jednoduše odkazujte na adresář plný zvukových souborů:

$ drutil vypalování -audio / cesta / do / složky

Tento nástroj se také může hodit pro mazání médií CD-RW pomocí vymazat příkaz (drutil vymazat / cesta / do / složky). S bulkerase příkaz, vymaže disk CD-RW, vysune ho a počká na vložení dalšího, poté opláchne a opakuje.

The hdiutil nástroj je v tom poněkud příbuzný hdiutil se používá k manipulaci s obrazy disků. Můžeš použít hdiutil k vytvoření obrazu disku Apple (tj. souboru DMG) z cesty k adresáři:

$ hdiutil create -srcfolder / path / to / files / myfiles.dmg

V El Capitanu můžete ISO obrazy vypalovat na CD pomocí následujícího příkazu:

$ hdiutil vypálit / cesta / do / souboru.iso

The hdiutil obslužný program má také mnoho dalších funkcí, například připojování a odpojování obrázků, převod obrazových formátů, vytváření šifrovaných obrázků a ověřování obrázků.

7. system_profiler: Nahlásit informace o systému

Při ladění problémů nebo zkoumání systému je užitečné mít možnost získat zprávu o všech příslušných informacích o použitém hardwaru a softwaru. To je to system_profiler ano, a odešle tuto zprávu do textového souboru pro snadné čtení.

Pro většinu účelů postačuje základní přehled:

$ system_profiler -detailLevel basic> report.txt

Získáte tak spoustu dat v systému, od základů, jako jsou CPU, RAM, grafika a úložiště, po sériové číslo, hardwarové UUID, informace o síti, počet slotů RAM, údaje o síti, informace o napájení, software tiskárny, USB, Thunderbolt a Informace o zálohování Time Machine.

Je to jednotné kontaktní místo pro všechna data, která byste na konkrétním počítači Mac mohli potřebovat. To je zvláště užitečné, když se pokoušíte vyřešit problémy se vzdáleným systémem, ke kterému nemáte přístup, například když máma nebo táta volají s nevysvětlitelným problémem.

8. dehet, gzip, bzip2, a zip: Vytváření a otevírání komprimovaných archivů

Ve světě Unixu dehet (zkratka pro „tape archive“) se původně používal ke kopírování souborů na záložní pásky ve standardizovaném formátu.

Dnes již nepoužíváme dehet úplně stejným způsobem. Používáme jej k vytváření archivů jednotlivých souborů nebo adresářů. Zaměstnáno vedle kompresních nástrojů gzip a bzip2, dehet umožňuje nám vytvářet komprimované archivy souborů. Výsledek je podobný archivu souborů Zip, který se používá na počítačích Mac, Windows a dalších.

Chcete-li vytvořit gzip dehet archiv adresáře, můžeme spustit:

$ tar zcpf myfiles.tgz / cesta / k / souborům

Tím se vytvoří soubor myfile.tgz, což je archiv gzipovaného tar všech souborů v odkazované cestě. Pokud chceme použít bzip2, můžeme získat menší archiv, ale může trvat déle komprimovat a dekomprimovat:

$ tar jcpf myfiles.tbz / cesta / k / souborům

A vždy můžeme použít běžný zip:

$ zip –r myfiles.zip / cesta / k / souborům

Chcete-li otevřít soubor tar s gzipem, spustíme tento příkaz:

$ tar zxf myfiles.tgz

Chcete-li otevřít bzipbzip2) archiv, příkaz je následující:

$ tar jxf myfiles.tbz

A pro archivy Zip je příkaz rozbalit:

$ unzip myfiles.zip

Možná získáte lepší kilometrový výkon dehet a gzip nebo bzip2 než zip u některých typů souborů, mějte však na paměti, že uživatelé systému Windows nebudou moci otevřít archivy bez konkrétního softwaru, zatímco soubory Zip se budou automaticky otevírat v moderních verzích systému Windows.

9. mdfind: Proveďte výkonné vyhledávání Spotlight

OS X má vyhledávání Spotlight po celá léta. Spotlight indexuje soubory na vašem disku a umožňuje pokročilé vyhledávání podle metadat, typu souboru, obsahu souboru a dalších. Naštěstí jsou vyhledávání Spotlight k dispozici také na příkazovém řádku prostřednictvím mdfind.

Funguje to přesně jako nástroj Spotlight ve Finderu, ale je flexibilnější v typech vyhledávání a vrací všechna nalezená data. Například následující příkaz vrátí doslova vše indexované Spotlightem obsahující klíčové slovo foobar:

$ mdfind "foobar"

Můžete také vyhledat všechna metadata, například typ souboru:

$ mdfind "kMDItemContentType == 'com.microsoft.word.doc'"

Můžete vyhledávat podle typu souboru pomocí klíčových slov:

$ mdfind "druh: pdf sýrový salám"

Můžete dokonce vyhledávat podle časového rámce:

$ mdfind -onlyin ./tmp/ 'kMDItemFSContentChangeDate> = $ time.today (-2)'

GUI Spotlight search je určitě užitečné pro jednoduché vyhledávání, ale pokud se opravdu snažíte prohledat úložiště souborů, mdfind může být lepší sázka.

10. říci: Nechte si Mac přečíst soubor

The říci příkaz může být užitečný pro ty, kteří potřebují zvukovou pomoc z důvodu zdravotního postižení, ale může to být také velká zábava. Tento nástroj dělá to, co můžete očekávat: Překládá text na řeč. Nejzákladnější je velmi jednoduché použití:

$ řekněte „Hello world“

Dostanete stereotypní robotický hlas, který říká „Ahoj světe.“ Tím to však nekončí. Na výběr je 64 různých hlasů v různých jazycích. U některých zahraničních hlasů bude anglický text vysloven v přibližné míře pro mluvčího s anglickým přízvukem. Seznam všech hlasů můžete zobrazit pomocí tohoto příkazu:

$ say -v „?“

Jakmile se rozhodnete pro vhodný hlas, můžete mít říci, řekněte cokoli na příkazovém řádku nebo v normálním textovém souboru. Zahrnout --interaktivní vlajka a říci zvýrazní slova při jejich čtení nahlas:

$ say -v Vicki -f myfile.txt - interaktivní

Můžete dokonce nastavit rychlost čtení textu zpět a pokud je cílový systém správně nakonfigurován, můžete mít říci přečíst text na vzdáleném systému.

Grafické uživatelské rozhraní počítače Mac usnadňuje většinu věcí a je to příjemné místo, kde můžete trávit čas. Mac však obsahuje více než jen hezkou tvář. Když se grafické uživatelské rozhraní zdá být příliš omezené nebo příliš pomalé, může být jednodušší otevřít terminál a klepnout na sílu příkazového řádku. Kromě těchto 10 základních věcí si prohlédněte tajemství příkazového řádku 20 OS X v předchozím článku.

$config[zx-auto] not found$config[zx-overlay] not found