Se você literalmente só precisa fazer isso em uma linha, você pode fazer:
task add "Get some foo"; task add "Get some bar"
Isso usa apenas o token ;
nativo do shell.
Como posso adicionar várias tarefas em uma linha de comando no Taskwarrior ?
Eu gostaria de alcançar algo como:
task add task1 tag:tag1, task2 tag:tag2
Acho que deveria haver um delimitador para separar as tarefas.
Se você literalmente só precisa fazer isso em uma linha, você pode fazer:
task add "Get some foo"; task add "Get some bar"
Isso usa apenas o token ;
nativo do shell.
Eu não sei se você ainda está interessado nisso. Eu criei um script de shell bastante rápido que se adequava aos meus propósitos no momento. Ele pergunta se você deseja definir um projeto ou tag (s) para as tarefas, em seguida, cria várias novas tarefas rapidamente. Usa algumas combinações de cores bem altas, acho que acabei de descobrir o método "echo -e" na época; o)
Eu estava pesquisando hoje e encontrei seu post porque queria desenvolver o script para fazer dependências, mas parece que eu teria que aprender python; Eu também quero fazer alguma sincronização de lembretes do google. Se você encontrou uma boa ferramenta, então eu ficaria feliz em saber qual solução você escolheu.
kr Um
#!/bin/bash
# Script: twmulti
# Created: 2016.02.11
# Current: ~/Bin
# clear the variables just in case a recent session set them
PRJNAME=""
TAGNAME=""
TSKNAME=""
clear
echo -e "\e[1;33;41mENTER PROJECT NAME >\e[0;m"
read PRJNAME
if [ -z $PRJNAME ] ; then PRJNAME="" ; fi
echo -e "\n\e[1;33;41mENTER ANY TAG(S) >\e[0;m"
read TEMPTAGNAME
TAGNAME="+"'echo $TEMPTAGNAME | sed 's/ / +/g''
if [ -z $TEMPTAGNAME ] ; then TAGNAME=""; fi
while :
do
clear
echo -e "\e[1;33;41mENTER TASK DESCRIPTION (Project:$PRJNAME) >\e[0;m"
echo -e "\e[1;33;41mor enter again to quit\e[0;m"
read TSKNAME
if [ -z $TSKNAME ] ; then exit ; fi
task add project\:$PRJNAME $TAGNAME $TSKNAME 1>/dev/null
echo -e "\e[0;m"
done
Como o @Sardathrion apontou no comentário, seria assim:
for i in "task 1" "task 2" "task 3"; do task add "$i"; done