Ocasionalmente, penso que desejo gravar em um arquivo enquanto estou no terminal. Gostaria dessas notas todas no mesmo arquivo, listadas uma após a outra. Eu também gostaria de uma marca de data / hora em cada uma.
É possível fazer isso sem precisar abrir o arquivo toda vez? Posso inseri-lo no terminal e anexá-lo ao arquivo toda vez com um comando ou script?
Estou usando o GNU BASH.
linux
command-line
Brian Dant
fonte
fonte
n
função grava no arquivo? Você não quer dizer algo como umecho "$*"
em vez de UUOC ? Como ele incorpora a marca de data / hora?.emacs.d
. Caramba, eu preciso limpar isso.Além disso, para gravar várias linhas em um arquivo na linha de comando, faça:
fonte
cat > sometextfile.txt << EOF
para substituir o arquivo existente.Basta usar
echo
:Você pode usar >> para anexar a um arquivo ou> para substituí-lo.
fonte
Muitos sinos e assobios arrumados aqui!
Método KISS:
fonte
Se você tiver o ruby instalado no seu computador, poderá usar https://github.com/minhajuddin/taskr . Dessa forma, você obtém uma boa visualização de suas anotações com tags e as horas decorridas.
fonte
Dependendo das suas necessidades, o syslogd pode ser outra ferramenta para ler. O comando
registrará a mensagem com o recurso user.notice. Em muitos sistemas Linux, isso será suficiente para que um arquivo /var/log/user.log seja aberto e anexado; com outros, você pode precisar definir um tratamento para esse recurso e nível de registro (ou, qualquer que seja o local escolhido - o local0 às instalações locais7 geralmente são livres para serem atribuídas a coisas como esta.
Tem o benefício de poder (também conhecido como configurável) enviar notas das máquinas clientes para um servidor de log central, algo que eu gosto de usar para acompanhar as ações administrativas, pois preserva as informações de carimbo de data e hora, do usuário e do host automaticamente, mantendo as ações em ordem .
saída resultante no arquivo local:
Exemplo para a linha de configuração do syslog no Solaris :
Nota: Quando
ifdef
são pré-processadasm4
, na máquina com o nome do host / hostalias "loghost", as mensagens serão registradas no arquivo / var / log / diário; em todas as outras, elas serão enviadas para o serviço syslog remoto no loghost. Para testar esse tipo de configuração, o arquivo de configuração pode ser enviado através do m4 para expansão (deixe de lado-D LOGHOST
para ver como ficaria em um sistema não chamado loghost :fonte
O Taskwarrior pode fazer o que você queria um pouco melhor do que um simples shell script. O tutorial de 30 segundos deve dizer se estou certo ou errado.
fonte
ou
mais sobre tee
fonte
$(..)
dos backticks para substituição de comandos. Mais informações: unix.stackexchange.com/questions/11576/…Combinando algumas respostas diferentes para alcançar o que eu procurava, que eram várias opções.
Modifique um arquivo em um determinado número de linha
fonte