2016-05-20 8 views
3

私はtodo-txtを使って私のToDoリストを管理しています。私はそれが素晴らしいツールだと思っていますが、私はもっと多くのリストを持つことができたらいいと思っています。今のところbashスクリプトtodo.shが1つあります。私は複数のリストを持っていたい。 todo.shのコピーを作成し、コピーと設定ファイルのすべての環境変数を変更し、別の名前でスクリプトの2つの作業コピーを共存させることはできますか? - > todo2.sh オリジナルを使用しているときに複製bashスクリプトを実行することはできますか?

    • コピーtodo.sh:私がしようとしたFatal Error: is not a directory

      もっとprecisley:その後、私は試してみましたが、それは動作しませんでしたし、私は次のエラーを取得してしまった何bassicallyですコピーtodo.cfg - > todo2.cfg

    • todo2.shがtodo2.shで同じ変数を変更し、設定ファイルに
    • 変更環境変数に書き込み、崇高で「すべて置き換え」を使用します設定ファイルの
    • 変更ディレクトリ
    • 私の.zshrcファイルを適切なコマンドを参照するように調整しました

    私が迷子になっているかもしれない主な場所は、環境変数の名前を変更することです。私がやっていることが可能であるかどうかはわかりません。私は私が働いているすべてのファイルをzip形式で圧縮しました、彼らはここで見つけることができます:https://drive.google.com/open?id=0Bze975WJ_w5KM21QRVZZblFidzQ

    編集を:@のCB0の方法で:

    ~ pwd 
    /Users/max 
    ~ ls | grep todo 
    todo 
    todo-projects 
    todo.cfg 
    todo2 
    ~ ls todo 
    README.md done.txt  evidence.log report.txt todo.txt  todo.txt.bak 
    ~ ls todo2 
    ~ cd .todo 
    ~/.todo ls -a 
    .   ..  .DS_Store .todo.cfg list2 
    

    /Users/max/.todo/.todo.cfg

    # Your todo.txt directory 
    export TODO_DIR="/Users/max/todo" 
    
    # Your todo/done/report.txt locations 
    export TODO_FILE="$TODO_DIR/todo.txt" 
    export DONE_FILE="$TODO_DIR/done.txt" 
    export REPORT_FILE="$TODO_DIR/report.txt" 
    

    /Users/max/.todo/list2/.todo2.cfg

    # Your todo.txt directory 
    export TODO_DIR="/Users/max/todo2" 
    
    # Your todo/done/report.txt locations 
    export TODO_FILE="$TODO_DIR/todo.txt" 
    export DONE_FILE="$TODO_DIR/done.txt" 
    export REPORT_FILE="$TODO_DIR/report.txt" 
    

    /Users/max/.zshrc

    alias t='todo.sh -d /Users/max/.todo/.todo.cfg' 
    alias t2='todo.sh -d /Users/max/.todo/list2/.todo2.cfg' 
    
  • +0

    メイクファイルを使用しましたか? – 123

    +0

    「todo.sh -d todo2.cfg」を使用しますか? todo.shを変更する必要はありません –

    +0

    本当にtodo.shのコピーを使いたいのであれば、あなたのt2エイリアスはtodo2.shを使うべきだと思います。つまり、エイリアスt2 = 'todo2.sh -d /Users/max/.todo/ list2/.todo2.cfg ' – Puppe

    答えて

    1

    スクリプトをコピーする必要はありません。私はちょうどそれを見て、2つの異なるTODOリストを使用してそれを働かせました。

    スクリプトの1つのコピーをシステムのどこかにインストールし、todo.shと呼んでいるとします。 は今、あなたはこの内容で~/.todo/configの下で、既存の設定を持っている:

    export TODO_DIR=$(dirname "$0") 
    export TODO_FILE="$TODO_DIR/todo.txt" 
    export DONE_FILE="$TODO_DIR/done.txt" 
    export REPORT_FILE="$TODO_DIR/report.txt" 
    

    だからあなたのタスクは、「〜/ .todo /」の下にdifferenファイルに保存されます。

    次に、2番目のToDoリストを作成します。したがって、2番目のディレクトリを作成します。 ~/.todo/list2/。その後~/.todo/list2/configList2~/.todo/configをコピーして、このようにそれを編集します。

    export TODO_DIR=~/.todo/list2/ 
    export TODO_FILE="$TODO_DIR/todo.txt" 
    export DONE_FILE="$TODO_DIR/done.txt" 
    export REPORT_FILE="$TODO_DIR/report.txt" 
    

    あなたは今、それは「〜/ .todo/LIST2 /」」ディレクトリの下のしていることを示す第2の設定ファイルを作成し

    今すぐ作成します。あなたの ".bashrc"や ".zshrc"のエイリアスはこのようになります。

    alias todo2="todo.sh -d ~/.todo/list2/config" 
    

    これは単にtodo.shを呼び出すだけでなく、設定ファイルのパラメータ-dを指定します。 ソースを使用してファイルをリロードします。

    source ~/.zshrc 
    

    ここでは2つのリストを使用できます。まず最初のリストに項目を追加します:

    >todo.sh list 
    full: 
    -- TODO: 0 of 0 tasks shown 
    
    >todo.sh add "List 1, ToDo Item" 
    >todo.sh list      
    sh: todo.sh full: 
    2 List 1, ToDo item 
    -- TODO: 1 of 1 tasks shown 
    

    そして次にもう1つのリストを追加します。

    >todo2 list 
    sh: todo.sh 
    full: 
    -- TODO: 0 of 0 tasks shown 
    
    >todo2 add "List 2, ToDo item" 
    >todo2 list      
    sh: todo.sh 
    full: 
    1 List 2, ToDo Item 
    -- 
    TODO: 1 of 1 tasks shown 
    

    これはあなたが探していたものです。

    +0

    私はあなたの方法を試しましたが、それを働かせることができませんでした。編集をご覧ください。私はここで何が欠けていますか? – mbigras

    +0

    "/ Users/max/todo2"のディレクトリリストは、フォルダの内容を生成しません。そのディレクトリに空の "done.txt"と "todo.txt"ファイルがあることを確認してください。残りの部分はここのように見え、正常に動作しています:( – cb0

    +0

    私の 'zshrc'で'/User/max/.todo/list2/.todo2.cfg''を '/Users/max/.todo/list2/.todo2.cfg ''が問題を解決した後、スクリプトは私のためにdone.txtとtodo.txtファイルを作成しました:) – mbigras

    0

    コードを簡単に見てみたら、スクリプトがインストールされているディレクトリ全体をコピーするのが明らかな解決策だと思います。

    +0

    私はそれをすると設定ファイルを共有し、設定ファイルを変更すると環境変数も変更する必要があるのだろうかという問題があると思います。両方のスクリプトを同時に実行できましたか?私が助けが必要なのは、変更する必要がある設定のうちどれを設定するかを決めることです。 – mbigras

    +0

    いいえ、試していません。私はちょうどコードを見て、どのファイルを読むかを決めるスクリプトの場所を使っているのを見ました。 –

    関連する問題