我有一个脚本来解压缩/解压缩压缩文件并将其cd入其中然后运行另一个加载脚本来加载。当顶级目录只是/
时,我有一些独特的案例,一切正常。有谁知道我应该如何处理这个独特的案例?
为了更清楚,我需要cd到myfile_01而不是根目录。
tar -xvzf $fname
cd $(tar -tf $fname | grep -m3 /$) #tar it and cd into it
loadIt #run load script
会导致问题的独特案例:
[user@user my_directory]$ tar -tf myfile_01.tgz | grep -m3 /$
./ # it will cause it to cd to top level directory instead of my_file01
./myfile_01/
答案 0 :(得分:1)
遵循您的脚本模式,您是否只是删除了给您带来麻烦的顶级目录?
使用grep:
tar -tf myfile_01.tgz | grep -m3 /$ | grep --invert-match --extended-regexp '^\./$'
使用tail:
tar -tf myfile_01.tgz | grep -m3 /$ | tail -1