Perbaiki: Kesalahan Sintaks dekat token tak terduga `('

Kesalahan pesan sintaks kesalahan dekat token tak terduga `(' terjadi di lingkungan tipe Unix, Cygwin, dan di antarmuka baris perintah di Windows. Kesalahan ini kemungkinan besar akan dipicu ketika Anda mencoba menjalankan skrip shell yang telah diedit atau dibuat di sistem DOS / Windows atau Mac yang lebih lama.

Kesalahan Sintaks di dekat token tak terduga `('

Pesan kesalahan ini juga muncul ketika Anda memasukkan perintah di baris perintah Linux untuk tugas sehari-hari seperti menyalin file secara manual dll. Alasan utama mengapa pesan kesalahan ini terjadi adalah karena sintaksis buruk atau masalah OS dalam menafsirkan perintah sistem lain / kulit.

Apa yang menyebabkan Galat Sintaks dekat token yang tidak terduga `('?

Alasan untuk pesan kesalahan ini sangat beragam dan tidak dapat dicantumkan dalam satu artikel karena ada ribuan kemungkinan sintaks yang salah saat menjalankan perintah. Alasan utama untuk kesalahan ini adalah:

  • Sintaksis salah ketika menjalankan perintah apa pun di platform mana pun. Entah Anda tidak menggunakan perintah dengan benar atau salah memasukkan sintaks.
  • Shell tidak kompatibel antara sistem Unix / DOS.
  • Ada masalah menjalankan skrip bash shell dari sumber lain .

Pada artikel ini, kami berasumsi bahwa Anda mengetahui dasar-dasar pengkodean dan tahu apa yang Anda lakukan. Jika Anda seorang pemula, yang terbaik adalah Anda mengikuti tutorial mendalam dari bahasa / perintah yang Anda coba jalankan. Anda mungkin telah membuat kesalahan beberapa sintaks.

Solusi 1: Memeriksa Sintaks dan Format perintah

Alasan pertama dan terpenting mengapa Anda mungkin mengalami pesan kesalahan ini adalah karena sintaksis buruk dalam kode Anda atau Anda tidak mengikuti format perintah yang tepat. Setiap perintah memiliki format yang telah ditentukan yang dapat Anda lihat dalam dokumentasinya. Beberapa parameter bersifat opsional dan yang lainnya wajib.

Selain itu, perhatian ekstra harus diberikan untuk ruang ekstra, penggunaan tanda kutip ganda, dan parameter wajib yang diperlukan. Jika salah satu dari mereka hilang atau dinyatakan salah, Anda tidak akan dapat menjalankan kode Anda.

Misalnya, alih-alih kode berikut

 [mycom7] # ./ctopo.sh um_test1 [(1, 2), (2, 1)] 

Anda harus menjalankannya sebagai

 [mycom7] # ./ctopo.sh um_test1 "[(1, 2), (2, 1)]" 

Juga, pastikan bahwa Anda menjalankan skrip perintah / shell Anda dengan benar jika itu mencakup beberapa baris.

Karena jenis parameter, tanda kutip ganda diperlukan. Ruang tambahan juga dapat merusak kode Anda dan memaksa pesan kesalahan. Pastikan Anda memeriksa dokumentasi resmi dari perintah yang Anda jalankan dan lihat apakah ada masalah di sana.

Solusi 2: Memecahkan masalah skrip shell Anda

Jika menggunakan skrip shell yang berfungsi dalam sistem sumber tetapi mengembalikan kesalahan dalam target, Anda dapat memecahkan masalah skrip dengan memeriksa variabel yang disimpan selama eksekusi dan kemudian melihat apa yang menyebabkan masalah. Ini adalah penyebab yang sangat umum karena dalam beberapa kasus, shell mencoba menafsirkan karakter yang tidak patut dicetak.

Coba jalankan shell dengan parameter 'vx'. Ini akan menunjukkan kepada kita perintah apa yang sedang dijalankan dan nilai apa yang disimpan dalam skrip. Melalui sini Anda dapat memecahkan masalah dan mendiagnosis apa yang salah.

Sebagai contoh, jalankan script di terminal setelah memasukkan 'vx' sebagai:

 # sh -vx ./test_script5.sh 

Anda dapat memeriksa isi skrip menggunakan perintah 'cat' sebagai:

 # cat test_script5.sh 

Solusi 3: Menggunakan perintah 'dos2unix.exe'

Dalam file teks Windows / DOS, baris baru adalah kombinasi dari Pengembalian Carriage (\ r) diikuti oleh Umpan Line (\ n). Di Mac (sebelum Mac OS X), jeda baris menggunakan Carriage Return (\ r) sederhana. Unix / Linux dan Mac OS X menggunakan jeda baris Umpan (\ n). Jika Anda menggunakan Cygwin, skrip ini akan gagal memproses skrip yang dibuat oleh DOS / Windows dan Mac lama karena karakter Carriage Return (\ r) tambahan.

Menggunakan perintah 'dos2unix.exe'

Di sini Anda dapat membuat perintah 'dos2unix.exe' yang akan mengkonversi skrip ke format yang benar dan kemudian Anda dapat menjalankannya tanpa masalah.

Untuk menyimpulkan, Anda perlu meneliti perintah dan jenis platform yang Anda gunakan dan memastikan tidak ada perbedaan. Karena kami tidak dapat membahas setiap kemungkinan, Anda akan mengetahui jenis kesalahan apa yang bisa terjadi dan bagaimana cara memperbaikinya.

Artikel Menarik