GNU/Linux >> Znalost Linux >  >> Linux

Unix - vytvoření cesty ke složkám a souboru

Použijte && pro kombinaci dvou příkazů v jednom řádku shellu:

COMMAND1 && COMMAND2
mkdir -p /my/other/path/here/ && touch /my/other/path/here/cpedthing.txt

Poznámka:Dříve jsem doporučoval použití ; k oddělení těchto dvou příkazů, ale jak poukázal @trysis, je pravděpodobně lepší použít && ve většině situací, protože v případě COMMAND1 selže COMMAND2 nebude ani popraven. (V opačném případě by to mohlo vést k problémům, které byste možná nečekali.)


Udělejte to pomocí /usr/bin/install:

install -D /my/long/path/here/thing.txt /my/other/path/here/cpedthing.txt

když nemáte zdrojový soubor:

install -D <(echo 1) /my/other/path/here/cpedthing.txt

Nejprve musíte vytvořit všechny nadřazené adresáře.

FILE=./base/data/sounds/effects/camera_click.ogg

mkdir -p "$(dirname "$FILE")" && touch "$FILE"

Pokud chcete být kreativní, můžete vytvořit funkci:

mktouch() {
    if [ $# -lt 1 ]; then
        echo "Missing argument";
        return 1;
    fi

    for f in "[email protected]"; do
        mkdir -p -- "$(dirname -- "$f")"
        touch -- "$f"
    done
}

A pak jej použijte jako jakýkoli jiný příkaz:

mktouch ./base/data/sounds/effects/camera_click.ogg ./some/other/file

Linux
  1. Linux – Rozumíte unixovým oprávněním a typům souborů?

  2. Jak vytvořit soubor v Linuxu z okna terminálu?

  3. Jeden příkaz pro vytvoření adresáře a souboru v něm linuxový příkaz

  1. Mkdir:Nelze vytvořit adresář:Žádný takový soubor nebo adresář?

  2. Proč používat Install Rather than Cp And Mkdir?

  3. Vytvářejte a odebírejte odkládací soubory v Ubuntu

  1. Jak vytvořit a připojit souborové systémy v Linuxu

  2. Jak vytvořit a dotazovat souborový systém BTRFS

  3. Extrahujte základní název souboru bez cesty a přípony v bash