我有问题,从squashfs中排除特定文件。我希望能够排除以* .db结尾但没有运气的所有文件类型。mksquashfs不包括文件
每当我使用参数运行mksquashfs命令来排除文件时,它总是包含该文件。我尝试了许多不同的命令。我的测试脚本如下:
#!/bin/bash
OPT="-regex -e '*.db' "
echo -e "Creating squashfs..."
mksquashfs test test.package ${OPT}
echo "Ran the following command: mksquashfs pf test.package ${OPT}"
echo -e "Uncompressing squashfs..."
mkdir pf_post
unsquashfs -f -d test_post/ test.package
echo
read -p "press any key to continue..."
rm test.package
rm -r test_post
测试目录树在下面。 test.db的两个实例都应该被排除,但它似乎不起作用。
test
├── test
│ └── test.db
├── test.ab
├── test.cd
├── test.db
├── test.ef
├── test.gh
└── test.sh
将其切换为通配符将其部分修复。这排除了第一个.db文件,但第二个子目录更深入不排除。有没有办法告诉它排除所有'.db'文件,而不仅仅是最低目录中的第一个文件?以下是排除第一个文件类型的代码。这两个解决方案仍然不排除子目录'.db'文件。
mksquashfs test test.package -wildcards -e '*.db'
mksquashfs test test.package -regex -e '\.db$'
上述的一些解决方案,可以从下列链接提供的,但我打了一个死胡同,我无法排除所有的“名.db”的文件。 https://askubuntu.com/questions/628585/mksquashfs-not-excluding-file
看起来像三个点和一个空间是我需要的!这解决了问题!谢谢! – tardis89
'mksquashfs test test.package -wildcards -e'... * .db'是修复它所需要的。 – tardis89