Você não pode usar um terminal para criar um arquivo. Você pode usar um aplicativo em execução em um terminal. Basta invocar qualquer editor não-GUI ( emacs -nw
, joe
, nano
, vi
, vim
,…).
Se você quis dizer usar a linha de comando, então você está perguntando como criar um arquivo usando o shell. Veja Qual é a diferença exata entre um 'terminal', um 'shell', um 'tty' e um 'console'?
A maneira básica de criar um arquivo com o shell é com redirecionamento de saída . Por exemplo, o comando a seguir cria um arquivo chamado foo.txt
contendo a linha Hello, world.
echo 'Hello, world.' >foo.txt
Se você quiser escrever várias linhas, aqui estão algumas possibilidades. Você pode usar printf
.
printf '%s\n' 'First line.' 'Second line.' 'Third line.' >foo.txt
Você pode usar um literal de string contendo novas linhas.
echo 'First line.
Second line.
Third line.' >foo.txt
ou
echo $'First line.\nSecond line.\nThird line.' >foo.txt
Outra possibilidade é agrupar comandos.
{
echo 'First line.'
echo 'Second line.'
echo 'Third line.'
} >foo.txt
Na linha de comando, você pode fazer isso mais diretamente com cat
. Redirecione sua saída para o arquivo e digite a linha de entrada por linha na entrada padrão de cat
. Pressione Ctrl + D no início da linha para indicar o final da entrada.
$ cat >foo.txt First line. Second line. Third line. Ctrl+D
Em um script, você usaria um documento aqui para obter o mesmo efeito:
cat <<EOF >foo.txt
First line.
Second line.
Third line.
EOF
Se você quiser apenas criar um arquivo vazio, você pode usar o comando touch
: ele cria o arquivo se ele não existir e apenas atualiza sua data da última modificação, se existir.
touch foo.txt
Equivalente:
>>foo.txt
i.e. abra foo.txt
para acrescentar, mas escreva 0 bytes - isso cria o arquivo, mas não o modifica. Ao contrário de touch
, isso não atualiza a data da última modificação do arquivo, se já existir.
Para criar um arquivo vazio e remover o conteúdo do arquivo, se o arquivo já existir, você pode usar
>foo.txt