Saya menjalankan beberapa skrip Perl pihak ketiga yang ditulis sedemikian rupa sehingga memerlukan file output untuk flag output -o
,.
Sayangnya, skrip tampaknya memerlukan file aktual, yaitu, pengguna harus membuat file kosong filename.txt
dengan 0 byte dan kemudian memasukkan file kosong ini pada baris perintah skrip
perl script1.pl -o filename.txt
Pertanyaan: Bagaimana cara saya membuat file kosong dalam skrip bash? Jika seseorang mencoba perl script1.pl -o filename.txt
, skrip memberikan kesalahan bahwa file tidak ada.
bash
shell-script
shell
files
ShanZhengYang
sumber
sumber
touch filename.txt
Jawaban:
Gunakan
touch
perintah.touch filename.txt
.sumber
echo -n >file
Gunakan perintah null (
:
) redirect (> filename
) trick (:>
), karena ini akan terpotong menjadi nol atau membuat file bernama.(Ini akan gagal jika shell menetapkan opsi NOCLOBBER.)
sumber
>|
ke clobber, jadi:>| filea
- didokumentasikan dalam manual> filename.txt
akan lakukan, tidak perlu untuk:
. Atau>> filename.txt
jika kita tidak ingin membuangnya jika memang ada.:
membuat skrip lebih mungkin untuk menyelesaikan tugasnya dengan shell lain misalnya Zsh.Anda selalu bisa menggunakan perl juga.
sumber