Я копирую пул .tar резервных копий домашних каталогов пользователей на новый сервер и архивированные файлы уже скопированы со старого сервера на новый сервер.Как извлечь длинный список tarball через STDIN?
Для примера;
[[email protected] /home]# ls /home |grep tar
returns:
user1.tar
user2.tar
user3.tar
[etc]
Но сделать вещи немного сложнее, то тарболы были созданы из корневого каталога на исходном сервере, так что экстракция по умолчанию имеет «дом» в пути по умолчанию например .;
[[email protected] /home]# tar -xvf user1.tar
экстракты в новый домашний каталог относительно где ваши работы команды и размещает распакованные файлы на пути
/home/home/user1
Ближайшим Я считаю, что я пришел к тому, что требуется (с несколькими различными вариации);
[[email protected] /]# ls /home |grep tar |tar -xvf -
возвращение;
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
Теперь я понимаю, что есть много обходных путей для каждого из различных частей, но если я буду расти, чтобы быть супер-круто сисадмин, как мои друзья, я, вероятно, следует знать, супер-крутые трюки как это.
Спасибо!
'Ls * .tar' может быть' эхо * .tar'; нет необходимости вызывать команду 'ls', которая в этом случае просто выведет свои аргументы. (Если у вас нет одной или нескольких каталогов с именами, соответствующими '* .tar'.) И я уверен, что вам не нужна опция' z' в этой второй команде. –