Как я смолю каталог файлов и папок без включения самого каталога?

Я расширил UITableViewCell с помощью нескольких методов-разделителей (в Swift). С их помощью я могу добавить разделители к заголовкам или удалить их из обычных ячеек. Я надеюсь, что это может помочь некоторым людям.

public extension UITableViewCell
{
    func addSeparator(y: CGFloat, margin: CGFloat, color: UIColor)
    {
        let sepFrame = CGRectMake(margin, y, self.frame.width - margin, 0.7);
        let seperatorView = UIView(frame: sepFrame);
        seperatorView.backgroundColor = color;
        self.addSubview(seperatorView);
    }

    public func addTopSeparator(tableView: UITableView)
    {
        let margin = tableView.separatorInset.left;

        self.addSeparator(0, margin: margin, color: tableView.separatorColor!);
    }

    public func addBottomSeparator(tableView: UITableView, cellHeight: CGFloat)
    {
        let margin = tableView.separatorInset.left;

        self.addSeparator(cellHeight-2, margin: margin, color: tableView.separatorColor!);
    }

    public func removeSeparator(width: CGFloat)
    {
        self.separatorInset = UIEdgeInsetsMake(0.0, width, 0.0, 0.0);
    }

}
362
задан l'L'l 23 October 2015 в 15:13
поделиться

6 ответов

cd my_directory/ && tar -zcvf ../my_dir.tgz . && cd - 

должен выполнять работу в одну строку. Он также хорошо работает со скрытыми файлами. «*» не расширяет скрытые файлы путем раскрытия имени пути, по крайней мере, в bash. Ниже представлен мой эксперимент:

$ mkdir my_directory
$ touch my_directory/file1
$ touch my_directory/file2
$ touch my_directory/.hiddenfile1
$ touch my_directory/.hiddenfile2
$ cd my_directory/ && tar -zcvf ../my_dir.tgz . && cd ..
./
./file1
./file2
./.hiddenfile1
./.hiddenfile2
$ tar ztf my_dir.tgz
./
./file1
./file2
./.hiddenfile1
./.hiddenfile2
217
ответ дан 23 November 2019 в 00:11
поделиться
tar -C my_dir -zcvf my_dir.tar.gz `ls my_dir`
-3
ответ дан 23 November 2019 в 00:11
поделиться

Вы также можете создать архив как обычно и распаковать его с помощью:

tar --strip-components 1 -xvf my_directory.tar.gz
55
ответ дан 23 November 2019 в 00:11
поделиться
cd my_directory
tar zcvf ../my_directory.tar.gz *
14
ответ дан 23 November 2019 в 00:11
поделиться

Если это система Unix / Linux, и вы заботитесь о скрытых файлах (которые будут пропущены *), вам нужно сделать:

cd my_directory
tar zcvf ../my_directory.tar.gz * .??*

Я не знаю, что выглядят скрытые файлы как в Windows.

3
ответ дан 23 November 2019 в 00:11
поделиться

Используйте переключатель -C tar:

tar -czvf my_directory.tar.gz -C my_directory .

-C my_directory указывает tar изменить текущий каталог на my_directory , а затем . означает «добавить весь текущий каталог» (включая скрытые файлы и подкаталоги).

Убедитесь, что вы выполнили -C my_directory , прежде чем делать . , иначе вы получите файлы в текущем каталоге.

627
ответ дан 23 November 2019 в 00:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: