Poszukuję sposobu na przechodzenie przez rekursywne katalogi, aby znaleźć określony plik, a następnie zatrzymanie wyszukiwania i potokowanie ścieżki pliku do funkcji awk lub coś podobnego. I asked a question earlier that was similar, ale po testowaniu na maszynach innych niż moje okazuje się, że polecenie locate
nie będzie działać, ponieważ nie wszyscy używają go w swoim systemie.Znajdź konkretny plik, a następnie potokuj do stdout/awk
Kod, który kiedyś z zlokalizować:
dir="/path/to/destination/";
mkdir "$dir";
locate -l 1 target_file.txt | \
awk -v dir="$dir" '{printf "cp \"%s\" \"%s\"\n", $1, dir}' | \
sh
możesz użyć find zamiast zlokalizować – Heisenbug
@Heisenbug - Myślałem o tym, ale nie mogłem znaleźć czegoś, co było speci fic do znalezienia jednego pliku. Czy użyłbym go w taki sam sposób jak w 'locate'? dzięki –