Powodem jest to, że chcę zrobić porządny skrypt zamiast
cd /some/dir
cpio -whatever<somefile
cd -
W GNU cpio nie ma na to nic. To może być trochę czystsze:
(cd /some/dir && cpio -whatever < /some/file)
Użycie nawiasów podpowłoki pozwoli zachować bieżący katalog roboczy skryptów, a użycie && zapewni, że wyodrębnienie procesora zostanie wykonane tylko wtedy, gdy pomyślnie zmienisz katalog na docelowy.
somefile
Musi faktycznie zamieszkują w/some/dir
tutaj. Właśnie spróbowałem i powiedziałem, że nie można znaleźć plików. Musisz albo użyć ścieżek względnych z powrotem do miejsca, gdzie były pliki, albo ścieżek bezwzględnych.Dodając jeszcze więcej do tego, co zrobił TCampbell:
(cp / some / file / some / dir && cd / some / dir && cpio -whthing <plik && rm -f plik)
źródło