Сжать в tar.gz на Grunt

Это сводит меня с ума, я просто пытаюсь сжать папку, например:

tar -czvf app.tar.gz ./app/

очевидно, он работает нормально, но https://npmjs.org/package/grunt-shell создает поврежденный tar.gz:

shell: {
  deploy: {
    command: 'tar -czvf app.tar.gz ./app/'
  }
}

Я пробовал https://npmjs.org/package/grunt-contrib-compress. без удачи (и я предпочитаю использовать оболочку, потому что после сжатия я сделаю другую вещь с tar.gz).

Мой стек:

OSX 10.8.3
узел 0.10.4
Grunt 0.4.1
grunt-shell 0.2.2
grunt-contrib-compress 0.5.0

Спасибо @hereandnow78 за указание на последовательность!

Если у вас есть:

shell: {
  deploy: {
    command: 'tar -cfvz app.tar.gz ./app/'
  }
},

Затем он даст вам файл tar.gz с именем «vz» (без расширения) с правильным содержимым.

Но, если у вас есть:

shell: {
  deploy: {
    command: 'tar -czf app.tar.gz ./app/'
  }
},

Затем он работает, как и ожидалось ... Итак, проблема связана с подробным параметром, может быть, это как-то связано с использованием stdout для подробной информации?

Что действительно раздражает, так это то, что tar -czvf app.tar.gz ./app/ отлично работает вне задачи ворчания.

Кто-нибудь может пояснить это?


person coma    schedule 18.05.2013    source источник


Ответы (1)


последовательность ваших параметров tar должна быть важна

попробуйте в такой последовательности:

-cfvz

что значит:

- c: create
- f: a file
- v: verbose
- z: additionally compress with gzip
person hereandnow78    schedule 21.05.2013