Szukam pojedynczego polecenia linux, które pozwoli mi zrobić równoważne z tym:
cp /some/path/file /another/path/ && ln -sf /another/path/file /some/path/
Jeśli nie ma, jaki jest najlepszy sposób na zrobienie tego dla wielu plików?
linux
command-line-interface
symlink
itsadok
źródło
źródło
&&
się&
. Jak napisano, linia sprawdza wartość zwracaną cp i uruchamia drugą część, jeśli się powiedzie.Odpowiedzi:
Mała uwaga: możesz użyć ln dwa razy, aby polecenie faktycznie nie przenosiło danych (zakładając, że obie ścieżki znajdują się w tym samym systemie plików).
Zakładam jednak, że chcesz przenieść zawartość / some / path / na inny dysk, a następnie utworzyć łącza do nowych plików, aby nikt nie zauważył.
Zawijanie go w funkcję bash:
źródło
Jest mój skrypt, którego możesz użyć (pobiera dwa parametry / some / path / file i / another / path /):
źródło
Poważnie, myślałem, że to było naprawdę łatwe pytanie.
Oto, co mogę zrobić w Perlu:
Miałem nadzieję na coś bardziej eleganckiego, ale chyba tego użyję.
źródło