Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Apa yang perlu dilakukan jika Linux tidak dapat melaksanakan skrip sh

Apa yang perlu dilakukan jika Linux tidak dapat melaksanakan skrip sh

WBOY
WBOYasal
2022-07-20 14:53:125155semak imbas

Terdapat tiga penyelesaian: 1. Gunakan arahan "dos2unix filename" untuk terus menukar fail yang ditentukan ke dalam format unix 2. Gunakan arahan sed untuk menggantikan terus aksara penamat dengan format unix, dan sintaksnya ialah "sed - i "s/r//" nama fail" atau "sed -i "s/^M//" nama fail"; 3. Selepas menggunakan vi untuk membuka fail, gunakan "set ff=unix" untuk menetapkan fail ke unix, dan gunakan ":wq "Simpannya.

Apa yang perlu dilakukan jika Linux tidak dapat melaksanakan skrip sh

Persekitaran pengendalian tutorial ini: sistem linux7.3, komputer Dell G3.

Apakah yang perlu saya lakukan jika Linux tidak dapat melaksanakan skrip sh

Sebab untuk menyebabkan ralat sedemikian semasa melaksanakan skrip shell adalah terutamanya kerana fail skrip shell berada dalam format dos, iaitu, penghujungnya setiap baris dikenal pasti oleh rn, manakala format unix Penghujung baris fail dikenal pasti oleh n.

Terdapat beberapa cara untuk menyemak sama ada fail skrip dalam format dos atau format unix.

(1) cat -Nama fail Ia boleh dinilai daripada hasil paparan bahawa baris fail yang berakhir dalam format dos ialah ^M, baris fail yang berakhir dengan format u n i x ialah, dan baris fail berakhir. dalam format unix ialah, format unix Baris fail berakhir dengan .

(2) od -t x1 nama fail Jika anda melihat aksara 0d 0a dalam kandungan output, maka fail itu dalam format dos Jika hanya ada 0a, ia dalam format unix.

(3) Buka fail dengan nama fail vi dan jalankan: set ff Jika fail dalam format dos, ia akan dipaparkan sebagai fileformat=dos Jika ia adalah unxi, ia akan dipaparkan sebagai format fail= unix.

Penyelesaian:

(1) Gunakan arahan linux dos2unix nama fail untuk terus menukar fail kepada format unix

dos2unix filename

(2) Gunakan Nama fail arahan sed sed -i "s/r//" atau nama fail sed -i "s/^M//" secara langsung menggantikan aksara penamat dengan format unix

sed -i “s/\r//” filename 
sed -i “s/^M//” filename

(3) nama fail vi membuka fail, Laksanakan: set ff=unix Tetapkan fail kepada unix, kemudian laksanakan: wq, simpan dalam format unix

set ff=unix

Pembelajaran yang disyorkan: Tutorial video Linux

Atas ialah kandungan terperinci Apa yang perlu dilakukan jika Linux tidak dapat melaksanakan skrip sh. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Apakah nama hos linux?Artikel seterusnya:Apakah nama hos linux?