Langkau ke kandungan
WANCODE
EN

Memahami Arahan Terminal

16 minitPertengahanHTML · CSS · JS

Dalam pelajaran ini

  • Terangkan apa yang dibaca, ditulis dan diubah oleh arahan biasa
  • Baca output error npm dan jejak puncanya kembali ke package.json
  • Kenal pasti arahan yang merosakkan sebelum anda (atau agent) menjalankannya

Idea utama

Arahan terminal ialah kod yang berjalan dengan kebenaran anda ke atas fail anda. Layan setiap arahan yang dicadangkan seperti perubahan kod: tahu apa yang ia baca, apa yang ia tulis, dan sama ada ia boleh dibatalkan.

Pembantu AI sentiasa mencadangkan arahan terminal, dan tool agent boleh menjalankannya untuk anda selepas anda luluskan. Meluluskan arahan yang anda tak faham sama seperti merge kod yang belum dibaca. Ini apa yang arahan harian itu sebenarnya buat.

npm install
Membaca package.json (dan package-lock.json), memuat turun package yang disenaraikan ke dalam node_modules, dan mungkin mengemas kini lockfile. Package boleh menjalankan skrip pemasangan sendiri, jadi npm install some-name bermaksud mempercayai package itu — pastikan ia wujud dan ejaannya betul; pembantu AI boleh mencadangkan nama package yang tidak wujud.
npm run dev
Menjalankan apa sahaja arahan di bawah "dev" dalam scripts di package.json. Biasanya ia memulakan server pembangunan yang terus berjalan sehingga anda tekan Ctrl+C. Tiada yang ajaib: buka package.json untuk lihat apa yang dijalankan.
git status
Baca sahaja. Menunjukkan branch anda, fail mana yang berubah, di-stage atau belum dijejak (untracked). Selamat dijalankan bila-bila masa — jalankan sebelum dan selepas agent menyunting projek anda.
rm -rf <path>
Membuang fail dan folder secara rekursif dan force: tiada pengesahan, tiada tong sampah. rm -rf node_modules biasa digunakan (boleh pasang semula), tetapi laluan yang salah — atau variable kosong dalam rm -rf $DIR/ — boleh memadam benda yang tidak boleh dikembalikan.
git reset --hard / git push --force
reset --hard membuang perubahan yang belum di-commit. push --force menulis ganti sejarah di remote, yang boleh memadam kerja rakan sepasukan. Kedua-duanya tidak patut dijalankan sambil lewa.

Membaca output error

Error terminal nampak menakutkan kerana panjang. Baca dari atas, cari baris pertama yang menyatakan apa yang salah, dan abaikan bunyi bising fail log di hujung. Dua error npm klasik (diringkaskan; ayat sebenar berbeza mengikut versi npm — versi lama mencetak npm ERR!):

Terminal
$ npm run dev
npm error code EJSONPARSE
npm error JSON.parse Failed to parse JSON data.
npm error JSON.parse Note: package.json must be actual JSON, not just JavaScript.

package.json ada syntax error — selalunya koma di hujung atau komen, yang tidak dibenarkan dalam JSON.

Terminal
$ npm run dev
npm error Missing script: "dev"
npm error
npm error To see a list of scripts, run:
npm error   npm run

Fail itu sah, tetapi tiada entri "dev" dalam scripts. Pembantu AI menganggap ada skrip yang projek anda tiada.

  • command not found — program itu tidak dipasang, atau tiada dalam PATH anda (untuk tool projek, jalankan melalui npm run atau npx).
  • EADDRINUSE — sesuatu sudah menggunakan port itu; mungkin server pembangunan anda sudah berjalan di terminal lain.
  • ENOENT — "no such file or directory": laluan salah, atau anda berada dalam folder yang salah (semak dengan pwd).

Jangan tampal arahan merosakkan secara membuta tuli

Sebelum menjalankan apa-apa yang dicadangkan pembantu AI: bolehkah anda nyatakan apa yang ia ubah? Bolehkah ia dibatalkan? Adakah ia menyentuh laluan yang anda sangka? Berhati-hati dengan rm -rf, sudo, git reset --hard, git push --force, git clean, dan curl … | sh (yang menjalankan skrip dari internet tanpa menunjukkannya kepada anda). Commit atau stash kerja anda sebelum membenarkan agent menjalankan sesuatu yang besar, dan jangan luluskan arahan secara pukal.

Tiada terminal sebenar dalam pelajaran ini. Pratonton membaca package.json seperti npm dan menunjukkan apa yang npm run … akan buat — tempat selamat untuk berlatih membacanya.

Pembantu AI berkata: "Jalankan npm run dev untuk memulakan server dev Vite." Terminal anda mencetak error EJSONPARSE di atas. Pratonton menunjukkan masalah yang sama.

1. Baiki syntax error JSON dalam package.json (pembantu AI telah menyuntingnya sebelum ini). 2. Jalankan semula dalam kepala: sekarang npm akan berkata Missing script: "dev". Tambah skrip "dev" yang memulakan server dev Vite — arahannya cuma vite.

Jangan buang skrip atau dependency sedia ada.

Semakan

  • package.json ialah JSON yang sah
  • Ada skrip dev yang memulakan Vite
  • Skrip dan dependency sedia ada dikekalkan

Uji kefahaman

Q1

Arahan manakah yang hanya membaca dan tidak pernah mengubah fail anda?

Q2

Dari mana npm run dev dapat arahan yang dijalankannya?

Q3

Agent mahu menjalankan rm -rf $BUILD_DIR/. Apa yang patut anda semak dahulu?

Apa yang anda pelajari

  • npm run <name> menjalankan scripts[name] daripada package.json — baca fail itu untuk tahu apa yang dijalankan.
  • Baca error terminal dari atas; kod seperti EJSONPARSE, ENOENT, EADDRINUSE memberitahu di mana perlu dilihat.
  • git status sentiasa selamat; rm -rf, reset --hard, push --force, sudo dan curl | sh memerlukan perhatian penuh.
  • Jangan tampal atau luluskan arahan yang anda tak boleh terangkan.
Pratonton

Output konsol daripada kod anda akan dipaparkan di sini.

Langkah 1 daripada 2