Chcę użyć awk i funkcji system(), aby przenieść kilka katalogów. Mam plik, który ma zostać przetworzony z nazwami awk file.cfg która jest zorganizowana w następujący sposób:wywołanie systemowe awk
/path1 /path2
/some_path /some_other_path
and so on..
każda pierwsza ścieżka jest oddzielona od drugiej ścieżki za pomocą spacji Więc oto jak to zrobiłem :
awk '{System (mv -R $ 1" „$ 2)}' file.cfg
ale to nie działa i mam
sh: 0/home/my_user/ścieżka1: Nie ma takiego pliku lub katalogu
Ale file.cfg wygląda następująco:
/home/my_user/ścieżka1/home/my_user/ścieżka2
i nie ma 0 przed/do domu. Więc czego tu brakuje?
To bardzo zły pomysł. awk jest narzędziem do manipulowania tekstem, a nie do tworzenia/przenoszenia plików lub katalogów - do czego służy otoczka i procesowa manipulacja. Powiedz nam, co faktycznie próbujesz zrobić, a pomożemy ci zrobić to w rozsądny sposób. –