All commands
| Command | Description | Hidden |
|---|---|---|
global |
||
_complete |
Internal command to provide shell completion suggestions | True |
completion |
Dump the shell completion script | |
help |
Display help for a command | |
list |
List commands | |
setup |
Setup TYPO3 via CLI using environment variables, CLI options or interactive | |
backend |
||
backend:lock |
Lock the TYPO3 Backend | |
backend:resetpassword |
Trigger a password reset for a backend user | |
backend:unlock |
Unlock the TYPO3 Backend | |
backend:user:create |
Create a backend user | |
cache |
||
cache:flush |
Flush TYPO3 caches. | |
cache:warmup |
Warmup TYPO3 caches. | |
cleanup |
||
cleanup:deletedrecords |
Permanently deletes all records marked as "deleted" in the database. | |
cleanup:flexforms |
Clean up database FlexForm fields that do not match the chosen data structure. | |
cleanup:localprocessedfiles |
Delete processed files and their database records. | |
cleanup:missingrelations |
Find all record references pointing to a non-existing record | |
cleanup:orphanrecords |
Find and delete records that have lost their connection with the page tree. | |
cleanup:previewlinks |
Find all versioned records and possibly cleans up invalid records in the database. | |
cleanup:versions |
Find all versioned records and possibly cleans up invalid records in the database. | |
clinspector |
||
clinspector:gadget |
Get JSON of all commands. | |
codesnippet |
||
codesnippet:baseline |
Create baseline for functional tests | |
codesnippet:create |
Create codesnippets | |
examples |
||
examples:createwizard |
A command that creates a wizard. It is hidden in the command list. You cannot use it in the scheduler. | True |
examples:dosomething |
A command that does nothing and always succeeds. | |
examples:meow |
Meow Information | |
extension |
||
extension:list |
Shows the list of extensions available to the system | |
extension:setup |
Set up extensions | |
fluid |
||
fluid:schema:generate |
Generate XSD schema files for all available ViewHelpers in var/transient/ | |
impexp |
||
impexp:export |
Exports a T3D / XML file with content of a page tree | |
impexp:import |
Imports a T3D / XML file with content into a page tree | |
language |
||
language:update |
Update the language files of all activated extensions | |
lint |
||
lint:yaml |
Lint a YAML file and outputs encountered errors | |
mailer |
||
mailer:spool:send |
Sends emails from the spool | |
messenger |
||
messenger:consume |
Consume messages | |
redirects |
||
redirects:checkintegrity |
Check integrity of redirects | |
redirects:cleanup |
Cleanup old redirects periodically for given constraints like days, hit count or domains. | |
referenceindex |
||
referenceindex:update |
Update the reference index of TYPO3 | |
scheduler |
||
scheduler:execute |
Execute given Scheduler tasks. | |
scheduler:list |
List all Scheduler tasks. | |
scheduler:run |
Start the TYPO3 Scheduler from the command line. | |
setup |
||
setup:begroups:default |
Setup default backend user groups | |
site |
||
site:list |
Shows the list of sites available to the system | |
site:sets:list |
Shows the list of available site sets | |
site:show |
Shows the configuration of the specified site | |
styleguide |
||
styleguide:generate |
Generate page tree for Styleguide TCA backend and/or Styleguide frontend | |
syslog |
||
syslog:list |
Show entries from the sys_log database table of the last 24 hours. | |
upgrade |
||
upgrade:list |
List available upgrade wizards. | |
upgrade:mark:undone |
Mark upgrade wizard as undone. | |
upgrade:run |
Run upgrade wizard. Without arguments all available wizards will be run. | |
workspace |
||
workspace:autopublish |
Publish a workspace with a publication date. |
_complete
-
_completeBack to list -
Internal command to provide shell completion suggestionsUsage
_complete [-s|--shell SHELL] [-i|--input INPUT] [-c|--current CURRENT] [-a|--api-version API-VERSION] [-S|--symfony SYMFONY]Copied!HelpInternal command to provide shell completion suggestions
completion
-
completionBack to list -
Dump the shell completion scriptUsage
completion [--debug] [--] [<shell>]Copied!Argumentsshell
HelpThe
completioncommand dumps the shell completion script required to use shell autocompletion (currently, bash, fish, zsh completion are supported).Static installationDump the script to a global completion file and restart your shell:
completion | sudo tee /etc/bash_completion.d/typo3Copied!Or dump the script to a local file and source it:
completion > completion.sh # source the file whenever you use the project source completion.sh # or add this line at the end of your "~/.bashrc" file: source /path/to/completion.shCopied!Dynamic installationAdd this to the end of your shell configuration file (e.g.
"~/.):bashrc" eval "$(/var/www/html/completion )"Copied!
help
-
helpBack to list -
Display help for a commandUsage
help [--format FORMAT] [--raw] [--] [<command_name>]Copied!HelpThe
helpcommand displays help for a given command:help listCopied!You can also output the help in other formats by using the --format option:
help --format=xml listCopied!To display the list of available commands, please use the
listcommand.
list
-
listBack to list -
List commandsUsage
list [--raw] [--format FORMAT] [--short] [--] [<namespace>]Copied!HelpThe
listcommand lists all commands:listCopied!You can also display the commands for a specific namespace:
list testCopied!You can also output the information in other formats by using the --format option:
list --format=xmlCopied!It's also possible to get raw list of commands (useful for embedding command runner):
list --rawCopied!
setup
-
setupBack to list -
Setup TYPO3 via CLI using environment variables, CLI options or interactiveUsage
setup [--driver [DRIVER]] [--host HOST] [--port [PORT]] [--dbname DBNAME] [--username USERNAME] [--password PASSWORD] [--admin-username [ADMIN-USERNAME]] [--admin-user-password ADMIN-USER-PASSWORD] [--admin-email ADMIN-EMAIL] [--project-name PROJECT-NAME] [--create-site [CREATE-SITE]] [--server-type [SERVER-TYPE]] [--force] [-n|--no-interaction]Copied!Help- The command offers 3 ways to setup TYPO3:
-
- environment variables
- commandline options
- interactive guided walk-through
All values are validated no matter where it was set. If a value is missing, the user will be asked for it.
Setup using environment variables
TYPO3_DB_DRIVER=mysqli \ TYPO3_DB_USERNAME=db \ TYPO3_DB_PORT=3306 \ TYPO3_DB_HOST=db \ TYPO3_DB_DBNAME=db \ TYPO3_SETUP_ADMIN_EMAIL=admin@example.com \ TYPO3_SETUP_ADMIN_USERNAME=admin \ TYPO3_SETUP_CREATE_SITE="https://your-typo3-site.com/" \ TYPO3_PROJECT_NAME="Automated Setup" \ TYPO3_SERVER_TYPE="apache" \ ./setup --forceCopied!Warning
Variable
TYPO3_(optionDB_ PASSWORD --) can be used to provide a password for the database andpassword TYPO3_(optionSETUP_ ADMIN_ PASSWORD --) for the admin user password. Using this can be a security risk since the password may end up in shell history files. Prefer the interactive mode. Additionally, writing a command to shell history can be suppressed by prefixing the command with a space when usingadmin- user- password bashorzsh.
backend:lock
-
backend:lockBack to list -
Lock the TYPO3 BackendUsage
backend:lock [<redirect>]Copied!Argumentsredirect
HelpLock the TYPO3 Backend
backend:resetpassword
-
backend:resetpasswordBack to list -
Trigger a password reset for a backend userUsage
backend:resetpassword <backendurl> <email>Copied!Argumentsbackendurl
email
HelpTrigger a password reset for a backend user
backend:unlock
-
backend:unlockBack to list -
Unlock the TYPO3 BackendUsage
backend:unlockCopied!HelpUnlock the TYPO3 Backend
backend:user:create
-
backend:user:createBack to list -
Create a backend userUsage
backend:user:create [-u|--username USERNAME] [-p|--password PASSWORD] [-e|--email EMAIL] [-g|--groups GROUPS] [-a|--admin] [-m|--maintainer]Copied!HelpCreate a backend user using environment variables
Example:
TYPO3_BE_USER_NAME=username \ TYPO3_BE_USER_EMAIL=admin@example.com \ TYPO3_BE_USER_GROUPS=<comma-separated-list-of-group-ids> \ TYPO3_BE_USER_ADMIN=0 \ TYPO3_BE_USER_MAINTAINER=0 \ ./backend:user:create --no-interactionCopied!Warning
Variable "TYPO3_BE_USER_PASSWORD" and options "-p" or "--password" can be used to provide a password. Using this can be a security risk since the password may end up in shell history files. Prefer the interactive mode. Additionally, writing a command to shell history can be suppressed by prefixing the command with a space when using
bashorzsh.
cache:flush
-
cache:flushBack to list -
Flush TYPO3 caches.Usage
cache:flush [-g|--group [GROUP]]Copied!HelpThis command can be used to clear the caches, for example after code updates in local development and after deployments.
cache:warmup
-
cache:warmupBack to list -
Warmup TYPO3 caches.Usage
cache:warmup [-g|--group [GROUP]]Copied!HelpThis command is useful for deployments to warmup caches during release preparation.
cleanup:deletedrecords
-
cleanup:deletedrecordsBack to list -
Permanently deletes all records marked as "deleted" in the database.Usage
cleanup:deletedrecords [-p|--pid PID] [-d|--depth DEPTH] [--dry-run] [-m|--min-age MIN-AGE]Copied!HelpTraverse page tree and find and flush deleted records. If you want to get more detailed information, use the --verbose option.
cleanup:flexforms
-
cleanup:flexformsBack to list -
Clean up database FlexForm fields that do not match the chosen data structure.Usage
cleanup:flexforms [--dry-run]Copied!HelpClean up records with dirty FlexForm values not reflected in current data structure.
cleanup:localprocessedfiles
-
cleanup:localprocessedfilesBack to list -
Delete processed files and their database records.Usage
cleanup:localprocessedfiles [--dry-run] [--all] [-f|--force]Copied!HelpIf you want to get more detailed information, use the --verbose option.
cleanup:missingrelations
-
cleanup:missingrelationsBack to list -
Find all record references pointing to a non-existing recordUsage
cleanup:missingrelations [--dry-run] [--update-refindex]Copied!HelpAssumptions: - a perfect integrity of the reference index table (always update the reference index table before using this tool!) - all database references to check are integers greater than zero - does not check if a referenced record is inside an offline branch, another workspace etc. which could make the reference useless in reality or otherwise question integrity Records may be missing for these reasons (except software bugs): - someone deleted the record which is technically not an error although it might be a mistake that someone did so. - after flushing published versions and/or deleted-flagged records a number of new missing references might appear; those were pointing to records just flushed.
An automatic repair is only possible for managed references are (not for soft references), for offline versions records and non-existing records. If you just want to list them, use the --dry-run option. The references in this case are removed.
If the option "--dry-run" is not set, all managed files (TCA/FlexForm attachments) will silently remove the references to non-existing and offline version records. All soft references with relations to non-existing records, offline versions and deleted records require manual fix if you consider it an error.
Manual repair suggestions: - For soft references you should investigate each case and edit the content accordingly. - References to deleted records can theoretically be removed since a deleted record cannot be selected and hence your website should not be affected by removal of the reference. On the other hand it does not hurt to ignore it for now. To have this automatically fixed you must first flush the deleted records after which remaining references will appear as pointing to Non Existing Records and can now be removed with the automatic fix.
If you want to get more detailed information, use the --verbose option.
cleanup:orphanrecords
-
cleanup:orphanrecordsBack to list -
Find and delete records that have lost their connection with the page tree.Usage
cleanup:orphanrecords [--dry-run]Copied!HelpAssumption: All actively used records on the website from TCA configured tables are located in the page tree exclusively.
All records managed by TYPO3 via the TCA array configuration has to belong to a page in the page tree, either directly or indirectly as a version of another record. VERY TIME, CPU and MEMORY intensive operation since the full page tree is looked up!
Automatic Repair of Errors: - Silently deleting the orphaned records. In theory they should not be used anywhere in the system, but there could be references. See below for more details on this matter.
Manual repair suggestions: - Possibly re-connect orphaned records to page tree by setting their "pid" field to a valid page id. A lookup in the sys_refindex table can reveal if there are references to an orphaned record. If there are such references (from records that are not themselves orphans) you might consider to re-connect the record to the page tree, otherwise it should be safe to delete it.
If you want to get more detailed information, use the --verbose option.
cleanup:previewlinks
-
cleanup:previewlinksBack to list -
Find all versioned records and possibly cleans up invalid records in the database.Usage
cleanup:previewlinksCopied!HelpLook for preview links within the database table "sys_preview" that have been expired and and remove them. This command should be called regularly when working with workspaces.
cleanup:versions
-
cleanup:versionsBack to list -
Find all versioned records and possibly cleans up invalid records in the database.Usage
cleanup:versions [-p|--pid PID] [-d|--depth DEPTH] [--dry-run] [--action [ACTION]]Copied!HelpTraverse page tree and find versioned records. Also list all versioned records, additionally with some inconsistencies in the database, which can cleaned up with the "action" option. If you want to get more detailed information, use the --verbose option.
clinspector:gadget
-
clinspector:gadgetBack to list -
Get JSON of all commands.Usage
clinspector:gadgetCopied!HelpGet JSON of all commands and their arguments.
codesnippet:baseline
-
codesnippet:baselineBack to list -
Create baseline for functional testsUsage
codesnippet:baselineCopied!HelpCreate baseline for functional tests
codesnippet:create
-
codesnippet:createBack to list -
Create codesnippetsUsage
codesnippet:create <config>Copied!HelpThis command will loop through all configured files in codesnippets.php and creates a restructured interpretation of the configured file.
examples:createwizard
-
examples:createwizardBack to list -
A command that creates a wizard. It is hidden in the command list. You cannot use it in the scheduler.Usage
examples:createwizard [-b|--brute-force] [--] [<wizardName>]Copied!HelpThis command accepts arguments
examples:dosomething
-
examples:dosomethingBack to list -
A command that does nothing and always succeeds.Usage
examples:dosomethingCopied!HelpThis command does nothing. It always succeeds.
examples:meow
-
examples:meowBack to list -
Meow InformationUsage
examples:meowCopied!HelpPrints random information about cats retrieved from an API call
extension:list
-
extension:listBack to list -
Shows the list of extensions available to the systemUsage
extension:list [-a|--all] [-i|--inactive]Copied!HelpShows the list of extensions available to the system
extension:setup
-
extension:setupBack to list -
Set up extensionsUsage
extension:setup [-e|--extension EXTENSION]Copied!HelpSetup all extensions or the given extension by extension key. This must be performed after new extensions are required via Composer.
The command performs all necessary setup operations, such as database schema changes, static data import, distribution files import etc.
The given extension keys must be recognized by TYPO3 or will be ignored.
fluid:schema:generate
-
fluid:schema:generateBack to list -
Generate XSD schema files for all available ViewHelpers in var/transient/Usage
fluid:schema:generateCopied!HelpGenerate XSD schema files for all available ViewHelpers in var/transient/
impexp:export
-
impexp:exportBack to list -
Exports a T3D / XML file with content of a page treeUsage
impexp:export [--type [TYPE]] [--pid [PID]] [--levels [LEVELS]] [--table [TABLE]] [--record [RECORD]] [--list [LIST]] [--include-related [INCLUDE-RELATED]] [--include-static [INCLUDE-STATIC]] [--exclude [EXCLUDE]] [--exclude-disabled-records] [--exclude-html-css] [--title [TITLE]] [--description [DESCRIPTION]] [--notes [NOTES]] [--dependency [DEPENDENCY]] [--save-files-outside-export-file] [--] [<filename>]Copied!HelpExports a T3D / XML file with content of a page tree
impexp:import
-
impexp:importBack to list -
Imports a T3D / XML file with content into a page treeUsage
impexp:import [--update-records] [--ignore-pid] [--force-uid] [--import-mode [IMPORT-MODE]] [--enable-log] [--] <file> [<pid>]Copied!HelpImports a T3D / XML file with content into a page tree
language:update
-
language:updateBack to list -
Update the language files of all activated extensionsUsage
language:update [--no-progress] [--fail-on-warnings] [--skip-extension SKIP-EXTENSION] [--] [<locales>...]Copied!Argumentslocales
HelpUpdate the language files of all activated extensions
lint:yaml
-
lint:yamlBack to list -
Lint a YAML file and outputs encountered errorsUsage
lint:yaml [--format FORMAT] [--exclude EXCLUDE] [--parse-tags|--no-parse-tags] [--] [<filename>...]Copied!HelpThe
lint:command lints a YAML file and outputs to STDOUT the first encountered syntax error.yaml You can validates YAML contents passed from STDIN:
cat filename | php lint:yaml -Copied!You can also validate the syntax of a file:
php lint:yaml filenameCopied!Or of a whole directory:
php lint:yaml dirname `php lint:yaml dirname --format=json`Copied!You can also exclude one or more specific files:
php lint:yaml dirname --exclude="dirname/foo.yaml" --exclude="dirname/bar.yaml"Copied!
mailer:spool:send
-
mailer:spool:sendBack to list -
Sends emails from the spoolUsage
mailer:spool:send [--message-limit MESSAGE-LIMIT] [--time-limit TIME-LIMIT] [--recover-timeout RECOVER-TIMEOUT]Copied!swiftmailer:spool:sendCopied!HelpSends emails from the spool
messenger:consume
-
messenger:consumeBack to list -
Consume messagesUsage
messenger:consume [--sleep SLEEP] [--queues QUEUES] [--exit-code-on-limit EXIT-CODE-ON-LIMIT] [--] [<receivers>...]Copied!HelpThe
messenger:command consumes messages and dispatches them to the message bus.consume php messenger:consume <receiver-name>
To receive from multiple transports, pass each name:
php messenger:consume receiver1 receiver2Copied!Use the --queues option to limit a receiver to only certain queues (only supported by some receivers):
php messenger:consume <receiver-name> --queues=fasttrackCopied!
redirects:checkintegrity
-
redirects:checkintegrityBack to list -
Check integrity of redirectsUsage
redirects:checkintegrity [<site>]Copied!HelpCheck integrity of redirects
redirects:cleanup
-
redirects:cleanupBack to list -
Cleanup old redirects periodically for given constraints like days, hit count or domains.Usage
redirects:cleanup [-d|--domain [DOMAIN]] [-s|--statusCode [STATUSCODE]] [-a|--days [DAYS]] [-c|--hitCount [HITCOUNT]] [-p|--path [PATH]] [-t|--creationType [CREATIONTYPE]] [-i|--integrityStatus [INTEGRITYSTATUS]]Copied!HelpCleanup old redirects periodically for given constraints like days, hit count or domains.
referenceindex:update
-
referenceindex:updateBack to list -
Update the reference index of TYPO3Usage
referenceindex:update [-c|--check]Copied!HelpUpdate the reference index of TYPO3
scheduler:execute
-
scheduler:executeBack to list -
Execute given Scheduler tasks.Usage
scheduler:execute [-t|--task [TASK]]Copied!HelpExecute given Scheduler tasks.
scheduler:list
-
scheduler:listBack to list -
List all Scheduler tasks.Usage
scheduler:list [-g|--group [GROUP]] [-w|--watch [WATCH]]Copied!HelpList all Scheduler tasks.
scheduler:run
-
scheduler:runBack to list -
Start the TYPO3 Scheduler from the command line.Usage
scheduler:run [-i|--task [TASK]] [-f|--force] [-s|--stop]Copied!HelpIf no parameter is given, the scheduler executes any tasks that are overdue to run. Call it like this: typo3/sysext/core/scheduler:run --task=13 -f
setup:begroups:default
-
setup:begroups:defaultBack to list -
Setup default backend user groupsUsage
setup:begroups:default [-n|--no-interaction] [-g|--groups [GROUPS]]Copied!HelpThe command will allow you to create base backend user groups for your TYPO3 installation.
You can create either both or one of the following groups:
- Editor
- Advanced Editor
site:list
-
site:listBack to list -
Shows the list of sites available to the systemUsage
site:listCopied!HelpShows the list of sites available to the system
site:sets:list
-
site:sets:listBack to list -
Shows the list of available site setsUsage
site:sets:listCopied!HelpShows the list of available site sets
site:show
-
site:showBack to list -
Shows the configuration of the specified siteUsage
site:show <identifier>Copied!HelpShows the configuration of the specified site
styleguide:generate
-
styleguide:generateBack to list -
Generate page tree for Styleguide TCA backend and/or Styleguide frontendUsage
styleguide:generate [-d|--delete] [-c|--create] [--] [<type>]Copied!Argumentstype
HelpGenerate page tree for Styleguide TCA backend and/or Styleguide frontend
syslog:list
-
syslog:listBack to list -
Show entries from the sys_log database table of the last 24 hours.Usage
syslog:listCopied!HelpPrints a list of recent sys_log entries. If you want to get more detailed information, use the --verbose option.
upgrade:list
-
upgrade:listBack to list -
List available upgrade wizards.Usage
upgrade:list [-a|--all]Copied!HelpList available upgrade wizards.
upgrade:mark:undone
-
upgrade:mark:undoneBack to list -
Mark upgrade wizard as undone.Usage
upgrade:mark:undone <wizardIdentifier>Copied!HelpMark upgrade wizard as undone.
upgrade:run
-
upgrade:runBack to list -
Run upgrade wizard. Without arguments all available wizards will be run.Usage
upgrade:run [<wizardName>]Copied!HelpThis command allows running upgrade wizards on CLI. To run a single wizard add the identifier of the wizard as argument. The identifier of the wizard is the name it is registered with in ext_localconf.
workspace:autopublish
-
workspace:autopublishBack to list -
Publish a workspace with a publication date.Usage
workspace:autopublishCopied!HelpSome workspaces can have an auto-publish publication date to put all "ready to publish" content online on a certain date.