GNU/Linux >> Znalost Linux >  >> Debian

Jak zkopírovat soubor jedním příkazem do více adresářů v Linuxu

Kopírování souboru v operačním systému Linux je jednoduché, ať už pomocí příkazového řádku nebo graficky. Někteří uživatelé však dávají přednost příkazovému řádku pro provádění téměř všech úkolů. Příkazový řádek nejenže nabízí snadný, ale rychlejší způsob provedení úkolu. Cp je příkaz v Linuxu, který se používá ke kopírování souboru z jednoho umístění do druhého. Co když ale potřebujeme zkopírovat soubor na více míst. Existuje způsob, jak mohu ukázat, jak toho v Linuxu dosáhnout.

Příkazy a procedury uvedené v tomto článku jsme spustili na operačním systému Debian 10, ale budou fungovat i na jakékoli jiné distribuci Linuxu.

Nejprve se podívejme, jak můžeme použít příkaz cp ke zkopírování souborů z jednoho umístění do druhého. Obecná syntaxe pro kopírování souborů pomocí příkazu cp je :

$ cp ~[/location/sourcefile] ~[/destinationfolder]

Příkladem může být zkopírování testfile1 z adresáře Documents do adresáře Downloads. Za tímto účelem jsem v terminálu spustil následující příkaz:

$ cp ~/Documents/testfile1 ~/Downloads/

Nyní, když musíme zkopírovat soubor na více míst, musíme příkazy spustit vícekrát. Například v následujícím příkladu kopírujeme testovací soubor1 z Dokumentů do dvou různých umístění, tj. Stahování a Plocha. K tomu musíme v Terminálu dvakrát spustit příkazy cp:

$ cp ~/Documents/testfile1 ~/Downloads/

$ cp ~/Documents/testfile1 ~/Desktop/

Kopírování souboru do více umístění pomocí příkazu echo

Kopírování souboru do dvou umístění pomocí příkazu cp je stále přijatelné, ale předpokládejme, že musíme soubor zkopírovat do čtyř, pěti nebo více umístění. v takovém případě máme další řešení, které používá příkaz echo. Syntaxe příkazu by byla:

$ echo [destination1] [destination2] [destiantion3]..... | xargs -n 1 cp [/location/sourcefile]

Příkaz echo se obvykle používá ve skriptech shellu k vytištění zprávy nebo výstupu na obrazovku. Ale zde v tomto příkladu jej použijeme k předání výstupu příkazu xargs prostřednictvím | symbol. Xargs získají vstup třikrát z příkazu echo a třikrát provedou operace cp, přičemž zkopírují testovací soubor na 3 různá místa. příznak n ve výše uvedeném příkazu řekne příkazu cp, aby přebíral vždy jeden argument.

Pamatujte, že tento příkaz přepíše již existující soubor pod stejným názvem v cílovém adresáři. Proto je lepší si již zálohovat důležitý soubor.

V následujícím příkladu používáme tento příkaz ke zkopírování testfile1 z adresáře Documents do tří různých adresářů, kterými jsou Desktop, Downloads a Music. Za tímto účelem jsme spustili následující příkaz:

$ $ echo [~/Desktop] [~/Downloads] [~/Music] | xargs -n 1 cp [/location/sourcefile]

To je vše, co k tomu patří! Nyní jsme se naučili, jak zkopírovat soubor jedním příkazem do více adresářů. Nyní tedy nemusíte psát více příkazů pro provedení nejjednoduššího úkolu kopírování jednoho souboru na více míst.


Debian
  1. Najděte soubory a adresáře v Linuxu pomocí příkazu find

  2. Kopírování souborů a adresářů v Linuxu

  3. Jak zkopírovat soubor do více adresářů pomocí příkazu gnu cp

  1. Jak používat příkaz less v Linuxu s příklady

  2. Jak aktualizovat Kali Linux jediným příkazem

  3. Jak nahradit soubor v jar příkazovým řádkem v linuxu?

  1. Jak zkopírovat soubor do více adresářů v Linuxu

  2. Jak kopírovat soubory a adresáře v Linuxu

  3. Jak přesouvat soubory a adresáře v Linuxu (mv Command)