У меня есть следующая команда, которая выполняется как часть сценария, выполняемого на удаленном компьютере через соединение ssh:
cd /var/spool/some_directory ; tar -cf file_name.tar file_1.txt file_2.txt file_3.txt ; echo $(du -m -- file_name.tar | awk '{print $1}')
У меня Centos 7.6 коробки, где это выполняется идеально. Однако у меня также есть устаревшие блоки Centos 6.7, в которых встречаются следующие ошибки:
du: cannot access `file_name.tar': No such file or directory
tar: echo: Cannot stat: No such file or directory
tar: Exiting with failure status due to previous errors
Когда я открываю каталог, я вижу, что сгенерирован ожидаемый файл file_name.tar.Выполнение echo $ (du -m - file_name.tar | awk '{print $ 1}')
независимо от приведенной выше команды работает должным образом - это похоже на то, что последняя команда выполняется раньше, чем остальная часть завершено.
Могу ли я что-нибудь сделать, чтобы заставить эти команды выполняться в ожидаемом порядке?