Почему мой сценарий оболочки создает файл с именем pipe? - PullRequest
0 голосов
/ 06 декабря 2010

У меня есть простая настройка:

pwd
/home/abc/pipetest

ls
mydir  pipetest.sh

Теперь я делаю:

 ./pipetest.sh

А потом я получаю

  ls
  file.tar.bz2  mydir  pipe  pipetest.sh

Мой вопрос: почему был создан файл с именем pipe? Он содержит некоторые символы, которые нельзя увидеть с помощью vi. Что происходит?

pipetest.sh содержит:

#!/bin/sh

directory_name=mydir
tar cf pipe $directory_name
bzip2 -c < pipe > file.tar.bz2

Ответы [ 2 ]

3 голосов
/ 06 декабря 2010

tar cf pipe $directory_name записывает файл tar в файл с именем pipe.

. Вы хотите использовать реальный канал:

tar c $directory_name | bzip2 > file.tar.bz2

Или просто использовать

tar cjf file.tar.bz2 $directory_name
0 голосов
/ 06 декабря 2010
tar -cf pipe

создает файл tar с именем "pipe" в текущем каталоге.

...