A Interface de Linha de Comando (CLI)
Se você tiver acesso de terminal ao servidor que executa seu site, poderá usar a CLI do Joomla para realizar tarefas rotineiras sem a necessidade de usar as credenciais de acesso do Joomla. Mesmo sem acesso ao terminal, como em algumas contas de hospedagem compartilhada, você pode executar comandos da CLI usando tarefas cron. Os comandos da CLI costumam ser mais rápidos ou mais convenientes do que os equivalentes realizados por meio da interface do Administrador do Joomla (ou do cPanel). Fazer backup do site e colocá-lo on-line/off-line são exemplos de situações em que você pode preferir usar a CLI.
O núcleo do Joomla possui cerca de 30 comandos úteis e você pode adicionar mais com extensões adicionais. Por exemplo, você poderia buscar dados externos, como dados de Geolocalização ou de taxa de câmbio, para um componente personalizado.
Usando a CLI
A CLI é usada invocando o executável do php na linha de comando. Isso costuma ser diferente daquele usado por um servidor web como o Apache. Se você estiver usando uma tarefa cron, talvez seja necessário fornecer o caminho completo para o executável do php, assim:
/usr/local/bin/php /home/username/public_html/[optional subfolder]/cli/joomla.php
Caso contrário, ao usar a linha de comando do terminal, mude o diretório para o diretório cli do Joomla e comece a executar o comando sem parâmetros:
cd /home/username/public_html/[optional subfolder]/cli
php joomla.php

E experimente alguns comandos de ajuda para se familiarizar com o que esperar:
php joomla.php help
php joomla.php list
php joomla.php help cache:clean
php joomla.php help config:get
Cada uma das descrições de ajuda e strings de uso estão codificadas nos arquivos da biblioteca Console ou em plugins de terceiros.
Experimente alguns comandos de ação simples:
php joomla.php config:get debug
php joomla.php cache:clean
php joomla.php site:down
php joomla.php site:up
Opções
Se você estiver chamando comandos a partir de um cron, talvez não queira ver nenhuma saída:
php joomla.php -q cache:clean
Observe que as opções podem usar um espaço ou o sinal =, mas as variáveis devem usar o sinal =:
php joomla.php session:gc --application administrator
php joomla.php session:gc --application=administrator
php joomla.php config:set debug=true
Comandos
Uma breve explicação de cada comando principal.
Cache
Limpar entradas expiradas do cache do sistema:
php joomla.php cache:clean --help
php joomla.php cache:clean

php joomla.php cache:clean expired

Config
Obter ou definir uma variável de configuração, uma das variáveis em configuration.php ou um grupo de variáveis. Os grupos válidos são db, session, mail,
php joomla.php config:get debug --help
php joomla.php config:get debug

php joomla.php config:set debug=true

php joomla.php config:get --group session

Core
Verificar atualizações ou atualizar o Joomla.
php joomla.php core:check-updates --help
php joomla.php core:check-updates

php joomla.php core:update --help
php joomla.php core:update

Banco de dados
Exporte ou importe o banco de dados. Você pode exportar ou importar todas as tabelas ou uma tabela selecionada. Não use este recurso para importar todas as tabelas de um site multilíngue. Há um problema que pode impedir completamente o funcionamento da Busca Inteligente.
php joomla.php database:export --help
php joomla.php database:export --table f4rc2_banners --folder /home/username/tmp/mydb (one table)
php joomla.php database:export --folder /home/username/tmp/mydb (all tables)
php joomla.php database:import --help
php joomla.php database:import --table /home/username/tmp/mydb/f4rc2_banners (one table)
[ERROR] The /home/username/tmp/mydb/f4rc2_banners.xml file does not exist.
php joomla.php database:import --folder /home/username/tmp/mydb (all tables in this folder)
Extensão
Liste, descubra, instale ou remova extensões.
php joomla.php extension:list --help
php joomla.php extension:list
php joomla.php extension:list --type component
php joomla.php extension:list --type file
php joomla.php extension:list --type language
php joomla.php extension:list --type library
php joomla.php extension:list --type module
php joomla.php extension:list --type package
php joomla.php extension:list --type plugin
php joomla.php extension:list --type template
php joomla.php extension:discover --help
php joomla.php extension:discover
php joomla.php extension:discover:list
php joomla.php extension:discover:install --eid=
php joomla.php extension:install --help
php joomla.php extension:install --path=
php joomla.php extension:install --url=
php joomla.php extension:remove --help
php joomla.php extension:remove
Localizador
Limpa e reconstrói o índice (os filtros de busca são preservados).
php joomla.php finder:index --help
php joomla.php finder:index
php joomla.php finder:index purge

Agendador
Liste, altere o estado ou execute tarefas agendadas.
php joomla.php scheduler:list --help
php joomla.php scheduler:list
php joomla.php scheduler:state --help
php joomla.php scheduler:state (interactive prompt for task id)
php joomla.php scheduler:run --help
php joomla.php scheduler:run --id ID
php joomla.php scheduler:run --all
Sessão
Execute a coleta de lixo da sessão.
php joomla.php session:gc --help
php joomla.php session:gc
php joomla.php session:gc --application administrator
php joomla.php session:metadata:gc --help
php joomla.php session:metadata:gc
Site
Coloca o site offline ou online.
php joomla.php site:down --help
php joomla.php site:down
php joomla.php site:up --help
php joomla.php site:up
Atualização
Verifica se há atualizações de extensões pendentes. Remove arquivos antigos que deveriam ter sido excluídos durante uma atualização do Joomla
php joomla.php update:extensions:check --help
php joomla.php update:extensions:check
php joomla.php update:joomla:remove-old-files --help
php joomla.php update:joomla:remove-old-files

Usuário
Liste e gerencie usuários.
php joomla.php user:list --help
php joomla.php user:list
php joomla.php user:add --help
php joomla.php user:add --username cinderella --name Cinderella --email cinders@localhost --usergroup Manager (solicita a senha)
php joomla.php user:add (solicita os dados)

php joomla.php user:addtogroup --help
php joomla.php user:addtogroup (solicita os dados)
php joomla.php user:addtogroup --usernam=cinderella --group=Manager
php joomla.php user:removefromgroup --help
php joomla.php user:removefromgroup (solicita os dados)
php joomla.php user:removefromgroup --usernam=cinderella --group=Manager
php joomla.php user:reset-password --help
php joomla.php user:reset-password (solicita os dados)
php joomla.php user:reset-password --username=cinderella (solicita a senha)
php joomla.php user:delete --help
php joomla.php user:delete (solicita o nome de usuário)
php joomla.php user:delete --username=cinderella (solicita confirmação - y para confirmar)