Simple and easy to use command line application written in Go for cleaning unnecessary XCode files.

Related tags

Command Line xcclear
Overview

xcclear

Say hello to a few extra gigabytes of space on your Mac with xcclear, a simple and easy to use command line application written in Go for cleaning unnecessary XCode files.

Installation

brew install lajosdeme/utils/xcclear

Screenshots

Run xcclear -d to diagnose your storage:

diagnose

Run xcclear -p to purge all unwanted files from your storage:

purge

Options

flag type description
-d/--diagnose bool Diagnose the total space occupied by derived data, caches and other XCode related files.
-p/--purge bool Clean all caches/unnecessary files.
-c/--clear string Clean only the specified directories.
Options can be:
- derived: Derived Data. - device: iOS DeviceSupport (The latest iOS version will be kept.)
- watch: watchOS DeviceSupport
- simulator: 'CoreSimulator'
- cache: Xcode caches located at ~/Library/Caches/com.apple.dt.Xcode
- archives: Archives
-v/--version bool Get the current version.

Development

Compiling from source

go get github.com/lajosdeme/xcclear

If $GOPATH/bin is on your $PATH run xcclear -h to see usage options.

Contributing

If you have any suggestions or questions feel free to raise an issue or reach out to me directly via [email protected].

If this tool made your life easier you can thank me by buying me a coffee.

Buy Me A Coffee

You might also like...
Rclone (
Rclone ("rsync for cloud storage") is a command line program to sync files and directories to and from different cloud storage providers.

Rclone ("rsync for cloud storage") is a command line program to sync files and directories to and from different cloud storage providers.

Command-line tool to load csv and excel (xlsx) files and run sql commands
Command-line tool to load csv and excel (xlsx) files and run sql commands

csv-sql supports loading and saving results as CSV and XLSX files with data processing with SQLite compatible sql commands including joins.

Rclone (
Rclone ("rsync for cloud storage") is a command-line program to sync files and directories to and from different cloud storage providers.

Website | Documentation | Download | Contributing | Changelog | Installation | Forum Rclone Rclone ("rsync for cloud storage") is a command-line progr

Docli - Command-line interfaces made easy
Docli - Command-line interfaces made easy

Docli Docli is a declarative language for describing command-line interfaces in Go programs. It cuts down the boilerplate to the bare minimum, so you

Package varflag implements command-line flag parsing into vars.Variables for easy type handling with additional flag types.

varflag Package flag implements command-line flag parsing into vars.Variables for easy type handling with additional flag types. varflag Flags String

Hosty is a command-line utility that allows for fast inspection and editing of /etc/hosts-like files

Hosty Description Hosty is a command-line utility that allows for fast inspection and editing of /etc/hosts-like files. It is written in golang and us

🔄 A command-line utility to export Protocol Buffers (proto) files to YAML, and JSON

proto2yaml 🔄 A command-line utility to export Protocol Buffers (proto) files to YAML, and JSON. Currently supported exports are for: Packages Service

This is a command line application to manage and fine-tune Time Machine exclude paths.

heptapod This is a command line application to manage and fine-tune Time Machine exclude paths. This repository is a WIP! The advertised functionality

Command line application based on IP lookup and server lookup.
Command line application based on IP lookup and server lookup.

Projeto feito usando Golang com as packages net e urfave/cli. Baseado no curso de Golang do devbook. Uma pequena aplicação em linha de comando, que fa

Comments
  • Error: Invalid formula: /opt/homebrew/Library/Taps/lajosdeme/homebrew-utils/xcclear.rb

    Error: Invalid formula: /opt/homebrew/Library/Taps/lajosdeme/homebrew-utils/xcclear.rb

    brew install lajosdeme/utils/xcclear

    ==> Tapping lajosdeme/utils Cloning into '/opt/homebrew/Library/Taps/lajosdeme/homebrew-utils'... remote: Enumerating objects: 25, done. remote: Counting objects: 100% (25/25), done. remote: Compressing objects: 100% (21/21), done. remote: Total 25 (delta 7), reused 14 (delta 4), pack-reused 0 Receiving objects: 100% (25/25), 4.82 KiB | 4.82 MiB/s, done. Resolving deltas: 100% (7/7), done. Error: Invalid formula: /opt/homebrew/Library/Taps/lajosdeme/homebrew-utils/xcclear.rb xcclear: Calling bottle :unneeded is disabled! There is no replacement. Please report this issue to the lajosdeme/utils tap (not Homebrew/brew or Homebrew/core): /opt/homebrew/Library/Taps/lajosdeme/homebrew-utils/xcclear.rb:7

    Error: Cannot tap lajosdeme/utils: invalid syntax in tap!

    opened by paluch 1
  • Remove (purge) output only if data exists

    Remove (purge) output only if data exists

    Hi, thanks for your utility, I found it searching through stackoverflow. About purging data, what if the output only displays what's being deleted after analysis?

    After diagnose, the output is reasonable:

    └─[$]> xcclear -d
    DerivedData: ----------------------------- 0.0 MB 
    Archives: - directory doesn't exist.
    iOS DeviceSupport: - directory doesn't exist.
    watchOS DeviceSupport: - directory doesn't exist.
    CoreSimulator: --------------------------- 9.55 GB 
    XCode Cache: - directory doesn't exist.
    
    Total: ---------------------------------- 9.55 GB 
    
    Type xcclear -p or xcclear --purge to clear everything. Archives and the last installed iOS version in iOS DeviceSupport won't be deleted.%
    

    But the output from purge is really polluted:

    2021/04/01 11:20:26 Purging started...
    2021/04/01 11:20:26 Archives and the last installed iOS version in iOS DeviceSupport won't be deleted.
    2021/04/01 11:20:26 Purging  DerivedData
    2021/04/01 11:20:26 Error cleaning /Users/ppizarror/Library/Developer/Xcode/iOS DeviceSupport
    2021/04/01 11:20:26 open /Users/ppizarror/Library/Developer/Xcode/iOS DeviceSupport: no such file or directory
    2021/04/01 11:20:26 Error cleaning /Users/ppizarror/Library/Developer/Xcode/watchOS DeviceSupport
    2021/04/01 11:20:26 open /Users/ppizarror/Library/Developer/Xcode/watchOS DeviceSupport: no such file or directory
    2021/04/01 11:20:26 Purging  CoreSimulator
    2021/04/01 11:20:26 Error cleaning /Users/ppizarror/Library/Caches/com.apple.dt.Xcode
    2021/04/01 11:20:26 open /Users/ppizarror/Library/Caches/com.apple.dt.Xcode: no such file or directory
    2021/04/01 11:20:26 Successfully freed up 9.55 GB.
    

    I think that the output should be (for user experience) this:

    2021/04/01 11:20:26 Purging started...
    2021/04/01 11:20:26 Archives and the last installed iOS version in iOS DeviceSupport won't be deleted.
    2021/04/01 11:20:26 Purging DerivedData ..... 0.0 MB
    2021/04/01 11:20:26 Purging CoreSimulator .... 9.55 GB
    2021/04/01 11:20:26 Successfully freed up 9.55 GB.
    

    That is, remove only what's being displayed in xcclear -d

    opened by ppizarror 1
  • Invalid formula

    Invalid formula

    ➜  Developer brew install lajosdeme/utils/xcclear
    Running `brew update --auto-update`...
    ==> Auto-updated Homebrew!
    Updated Homebrew from 492ac6f77 to 4484068de.
    Updated 3 taps (homebrew/core, homebrew/cask and homebrew/cask-fonts).
    
    You have 37 outdated formulae installed.
    You can upgrade them with brew upgrade
    or list them with brew outdated.
    
    ==> Tapping lajosdeme/utils
    Cloning into '/usr/local/Homebrew/Library/Taps/lajosdeme/homebrew-utils'...
    remote: Enumerating objects: 25, done.
    remote: Counting objects: 100% (25/25), done.
    remote: Compressing objects: 100% (21/21), done.
    remote: Total 25 (delta 7), reused 14 (delta 4), pack-reused 0
    Receiving objects: 100% (25/25), 4.82 KiB | 705.00 KiB/s, done.
    Resolving deltas: 100% (7/7), done.
    Error: Invalid formula: /usr/local/Homebrew/Library/Taps/lajosdeme/homebrew-utils/xcclear.rb
    xcclear: wrong number of arguments (given 1, expected 0)
    Error: Cannot tap lajosdeme/utils: invalid syntax in tap!
    
    opened by gabriel 1
  • Warning after updating brew

    Warning after updating brew

    Hello, I was updating my brew packages, and the following warning caught my attention:

    Warning: Calling bottle :unneeded is deprecated! There is no replacement.
    Please report this issue to the lajosdeme/utils tap (not Homebrew/brew or Homebrew/core):
      /opt/homebrew/Library/Taps/lajosdeme/homebrew-utils/xcclear.rb:7
    

    My OS: MacOS Big Sur v11.6.1 Brew: v3.3.3

    Thanks

    opened by ppizarror 0
Releases(v1.0.1)
Owner
null
A command line tool that builds and (re)starts your web application everytime you save a Go or template fileA command line tool that builds and (re)starts your web application everytime you save a Go or template file

# Fresh Fresh is a command line tool that builds and (re)starts your web application everytime you save a Go or template file. If the web framework yo

null 0 Nov 22, 2021
Watcher - A simple command line app to watch files in a directory for changes and run a command when files change!

Watcher - Develop your programs easily Watcher watches all the files present in the directory it is run from of the directory that is specified while

Geet Sethi 1 Mar 27, 2022
F2 is a cross-platform command-line tool for batch renaming files and directories quickly and safely. Written in Go!

F2 is a cross-platform command-line tool for batch renaming files and directories quickly and safely.

Ayooluwa 574 Nov 25, 2022
An open-source GitLab command line tool bringing GitLab's cool features to your command line

GLab is an open source GitLab CLI tool bringing GitLab to your terminal next to where you are already working with git and your code without switching

Clement Sam 2.1k Nov 22, 2022
A command line tool to prompt for a value to be included in another command line.

readval is a command line tool which is designed for one specific purpose—to prompt for a value to be included in another command line. readval prints

Venky 0 Dec 22, 2021
Easy to use library and CLI utility to generate Go struct from CSV files.

csv2struct Easy to use library and CLI utility to generate Go struct from CSV files. As a benefit, it's fully compatible with csvutil. So, structs gen

Ivan Maliovaniy 12 Nov 7, 2022
A simple tool which you can use to move through your directories from the command line

Fe What is Fe ? Fe is a simple tool which you can use to move through your direc

Pranav Baburaj 8 Jan 1, 2022
Lynx is a command line application that build simple golang project

Lynx Lynx is a Golang application for easily creating simple Go project Install Just run below commands for install lynx in your system go get -u gith

hossein varmazyar 3 Oct 1, 2021
Portal is a quick and easy command-line file transfer utility from any computer to another 🖥️ 🌌 💻

Portal is a quick and easy command-line file transfer utility from any computer to another ??️ ?? ??

Zino Kader 242 Nov 20, 2022
Package command provide simple API to create modern command-line interface

Package command Package command provide simple API to create modern command-line interface, mainly for lightweight usage, inspired by cobra Usage pack

chenen 0 Jan 16, 2022