Sed 使用法: スクリプトの最初の行に欠落している shebang を追加

Sed 使用法: スクリプトの最初の行に欠落している shebang を追加

私の*.shスクリプトにShebangの最初の行はありません。で修正できますかsed

答え1

iシャバンを挿入するには、in place操作を使用します。sed

sed -i '1 i #!/bin/bash' file.sh

.bak拡張子を使用して元のファイルをバックアップします。

sed -i.bak '1 i #!/bin/bash' file.sh

#!/bin/bash必要な実際のshebangと交換してください。

例:

% cat foo.sh
echo foobar

% sed '1 i #!/bin/bash' foo.sh 
#!/bin/bash
echo foobar

答え2

使用bashcat(非位置):

cat <(echo '#!/bin/sh') foo.sh

またはGNU awk> = 4.1を使用してください。

awk -i inplace 'BEGINFILE{print "#!/bin/sh"}{print}' foo.sh

関連情報