我有这个简单的设置:
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
答案 0 :(得分:3)
tar cf pipe $directory_name
将tar文件写入名为pipe
的文件。
您要做的是使用实际的管道:
tar c $directory_name | bzip2 > file.tar.bz2
或者只是使用
tar cjf file.tar.bz2 $directory_name
答案 1 :(得分:0)
tar -cf pipe
在当前目录中创建名为“pipe”的tar文件。