Problem jest taki: chcę usunąć komentarze ze skryptu.
Mój kod:
grep -E -v '^\s*#|^\s*$|^\s*;' plik.txt
Usuwa wszystko tak jak chcę, ale jest mały problem. Usuwa też pierwszą linię ```
#!/bin/bash
Problem jest taki: chcę usunąć komentarze ze skryptu.
Mój kod:
grep -E -v '^\s*#|^\s*$|^\s*;' plik.txt
Usuwa wszystko tak jak chcę, ale jest mały problem. Usuwa też pierwszą linię ```
#!/bin/bash
Metoda na chama:
head -1 plik.txt && grep -E -v '^\s*#|^\s*$|^\s*;' plik.txt
Metoda nie chama:
awk 'NR==1 || $0!~/^\s*#|^\s*$|^\s*;/' file.txt
Wersja nie na chama nr 2:
sed -nre '2,/^\s*#|^\s*$|^\s*;/!p'
;)
No to tak skoro już reszta Ci działa to napiszę kawałek skryptu z dodatkiem tego twojego i będzie jak ulał, żeby pozostał Ci interpreter #!/bin/bash
Kod:
#!/bin/bash
twoj_plik=plik.txt
for i in `cat $twoj_plik`
do
if [ $i == '#!/bin/bash' ]; then
echo "#!/bin/bash" > tymczas.txt
else
echo "$i" >> tymczas3.txt
fi
done
echo " " > $twoj_plik
a=`grep -E -v '^\s*#|^\s*$|^\s*;' tymczas3.txt`
b=`cat tymczas.txt`
echo "$b" > $twoj_plik
echo "" >> $twoj_plik
echo "$a" >> $twoj_plik
rm tymczas3.txt
rm tymczas.txt