Masalah dengan skrip shell sederhana

1

Saya menghadapi masalah dengan menggunakan perintah shell sederhana seperti AWK dan mencetak dalam skrip sh saya di Mac (skrip yang sama berfungsi sempurna di Linux). Misalnya skrip di bawah ini yang mencari kolom dalam file input yang diberikan tidak berfungsi

 #! /usr/bin/env bash
input=/Users/Own/Documents/Science/mmgbsa_results/All_decomp2/logs
output=/Users/Own/Documents/Science/mmgbsa_results/All_decomp2/out

for file in $input/*; do
title=$(basename "$file")
#print $title
awk -F’[|]’ '{print $1,$NF}' $file > ${output}/$title
done

keluaran:

awk: no program given

analysis.sh: line 11: ]’: command not found
awk: no program given

analysis.sh: line 11: ]’: command not found
awk: no program given

analysis.sh: line 11: ]’: command not found
awk: no program given

analysis.sh: line 11: ]’: command not found
awk: no program given

analysis.sh: line 11: ]’: command not found
awk: no program given

Berikut beberapa tes dari shell:

Glebs-MacBook-Pro:All_decomp2 Own$ echo $PATH
/Users/Own/anaconda/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
Glebs-MacBook-Pro:All_decomp2 Own$ awk
usage: awk [-F fs] [-v var=value] [-f progfile | 'prog'] [file ...]
Glebs-MacBook-Pro:All_decomp2 Own$ peint
-bash: peint: command not found
Gleb
sumber
Apa itu peint? Bisakah Anda menjalankan contoh perintah awk pada satu baris - Catatan Linux menggunakan gnu awk dan OS X BSD awk sehingga mungkin ada perbedaan di sana - juga apa itu baris 11?
Tandai
Bisakah Anda memposting $PATH? Saya menguji, dan skrip Anda berfungsi, jadi, masalahnya tampaknya bisa mencapai awkperintah. Perbaikan cepat dapat menambahkan path ke awk, menggunakan /usr/bin/awksebaliknya.
jherran
sebenarnya itu Cetak yang belum berfungsi (
Gleb
3
Kutipan Anda setelah -F dalam perintah awk salah, harus'
0942v8653
0942v8653 memiliki ide yang tepat. Pastikan Anda menggunakan editor teks untuk menulis skrip Anda, bukan pengolah kata.
glenn jackman