簡體   English   中英

Unix腳本自動將shebang插入perl文件

[英]Unix script to automatically insert shebang into perl file

我正在練習一些Perl腳本,而不是每次我決定制作一個基本的Unix腳本時都不要鍵入shebang,該腳本將創建一個擴展名為.pl和shebang的新文件,然后打開該文件進行編輯。 我試過的是:

alias ep "echo '#! /usr/bin/perl' >> perl/\!*.pl; emacs perl/\!*.pl;"

但是,如果文件不存在,則會導致錯誤。 我發現這很奇怪,因為我認為>>會附加或創建。 因此,我將>>更改為>,並且僅當文件不存在時才起作用。 如果該文件確實存在,則會崩潰並顯示錯誤。 我嘗試添加一條if語句,但同時也會出現語法錯誤和錯誤的錯誤信息。 我所擁有的是:

alias ep "if [ ! -f perl/\!*.pl ] then echo '#! /usr/bin/perl' > perl/\!*.pl fi; emacs perl/\!*.pl;"

我想念什么? 我對Unix腳本不太熟悉,但是具有一般知識。

似乎您可能set -C ,也稱為set -o noclobber

您可以使用重定向操作符>|來破壞文件>| ,或使用set +C撤消該選項。

你不想這樣 有很多事情要考慮(如果它已經存在,那真的是一個perl文件,等等)

您可以直接使用emacs代替

檢查一下: emacs骨架和自動插入

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM