GNU/Linux >> Belajar Linux >  >> Linux

Tidak Dapat Menemukan File Untuk Ditambal Pada Baris Input 3?

Pertanyaan ini sudah memiliki jawaban di sini :Bagaimana cara menerapkan patch -p0 dari direktori kerja mana pun?

(2 jawaban)
Tutup 4 tahun yang lalu.

Saya membuat tambalan menggunakan diff perintah dengan jumlah baris konteks sebagai 1 (-c pilihan). Isi file patch saya:

*** /home/sk/abc/def/src/klm/a.py 2015-05-18 16:25:50.348398554 +0530
--- /opt/abc/def/ghi/klm/a.py  2015-05-18 14:27:13.860503469 +0530
***************
*** 72,73 ****
--- 72,74 ----
              output, error, rCommand = "", "", ""
+             import subprocess
              rCommand = self.copyCmd % (self.executor_hostname, self.testId, self.testId)

Ketika saya mencoba menerapkan tambalan menggunakan perintah ini,

cd /
patch -p0 < sg.patch

Saya mendapatkan hasil ini,

can't find file to patch at input line 3
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|*** /home/sk/abc/def/src/klm/a.py  2015-05-18 16:25:50.348398554 +0530
|--- /opt/abc/def/ghi/klm/a.py  2015-05-18 17:10:48.368670076 +0530
--------------------------
File to patch:

Mengapa perintah patch tidak mengambil nama file di baris kedua sebagai file yang akan ditambal?

Jawaban yang Diterima:

Anda harus berada di direktori root untuk menerapkan patch dengan path absolut, dan menerapkan -p0 pilihan. Lihat juga postingan ini.


Linux
  1. Pengalihan Input/Output di Linux/Unix

  2. Cat Line X Ke Line Y Pada File Besar?

  3. Linux – Kernel Tidak Dapat Menemukan File /dev/sda Saat Boot?

  1. Temukan File Log Firefox?

  2. Temukan Usia File Tertua Dalam Satu Baris Atau Kembalikan Nol?

  3. unix - membagi file .gz besar per baris

  1. Temukan N Kata Paling Sering Dalam Sebuah File?

  2. Kotak Sibuk Membaca File Baris demi Baris?

  3. Temukan baris apa pun di VI yang memiliki sesuatu selain ATCG