2013-08-01 6 views
16

Angenommen, mein aktuelles Verzeichnis ist A. Ich möchte ein Verzeichnis B und eine Datei "myfile.txt" innerhalb B erstellen.Ein Befehl, um ein Verzeichnis und eine Datei darin zu erstellen linux commad

Wie in einem Befehl vom Terminal aus?

Edit:

Verzeichnis mehrfach verschachtelt werden können. Wie ich möchte B/C/D und dann "myfile.txt" innerhalb dieser erstellen. Ich möchte den Verzeichnisteil auch nicht wiederholen.

Der folgende Befehl erstellt Verzeichnis auf jeder Ebene.

mkdir -p B/C/D 

und

mkdir -p B/C/D && touch B/C/D/myfile.txt 

wird das Verzeichnis und die Datei erstellen. Aber ich möchte den Verzeichnisteil nach dem Touch-Befehl nicht wiederholen. So möglich?

+0

Schreiben Sie ein Shell-Skript. –

Antwort

22
mkdir B && touch B/myfile.txt 

Alternativ Erstellen einer Funktion:

mkfile() { mkdir -p -- "$1" && touch -- "$1"/"$2" } 

es Execute mit 2 Argumente: Pfad und den Dateinamen zu erzeugen. Zu sagen:

mkfile B/C/D myfile.txt 

die Datei myfile.txt im Verzeichnis B/C/D schaffen würde.

+1

Dies unterstützt jedoch keine TAB-Vervollständigung im Gegensatz zu einem "echten" Befehl wie 'mkdir'. – chx

0

Dies könnte Arbeit

  1. mkdir Name (dirname)

  2. CD-Name (dirname)

  3. Touch name (dirname)/Dateiname (es wird in einem Verzeichnis erstellt)

Verwandte Themen