GNU/Linux >> Znalost Linux >  >> Linux

Jak mohu vytvořit soubor v každé složce?

Za předpokladu, že máte seznam svých projektových adresářů v souboru s názvem "projects.txt", můžete to udělat (pro bash a zsh)

for i in $(cat projects.txt)
do
  touch $i/index.html
done

Chcete-li vytvořit svůj projects.txt, můžete použít find příkaz. Můžete nahradit cat přímo pomocí find volání, ale zdálo se mi jasnější tyto dvě operace oddělit.


cd /project_dir && find . -type d -exec touch \{\}/index.htm \;

HTH


find . -type d -exec touch {}/index.html \;

Tím se vytvoří index.html v . a všechny podadresáře.


Vím, že je to stará otázka, ale žádná ze současných odpovědí neumožňuje přidat nějaký ukázkový kód, zde moje řešení:

#create a temp file
echo "<?php // Silence is golden" > /tmp/index.php

#for each directory copy the file
find /mydir -type d -exec cp /tmp/index.php {} \;

#Alternative : for each directory copy the file where the file is not already present
find /mydir -type d \! -exec test -e '{}/index.php' \; -exec cp /tmp/index.php {} \;

Linux
  1. Jak vytvořit swap v Linuxu

  2. Jak vytvořit odkládací soubor v Linuxu

  3. Jak najdu konkrétní soubor z terminálu Linux?

  1. Jak najdu všechny odlišné přípony souborů v hierarchii složek?

  2. Jak mohu přidat řetězec na začátek každého řádku v souboru?

  3. Jak mohu vytvořit soubor výpisu běžícího procesu v Linuxu?

  1. Jak mohu symbolicky propojit soubor v Linuxu?

  2. Jak mohu zjistit typ MIME souboru (Content-Type)?

  3. Jak mohu přidat řetězec na začátek každého souboru ve složce v bash?