ນີ້ແມ່ນຄໍາສັ່ງ bbe ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍສະຖານີເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
bbe - binary block editor
ສະຫຼຸບສັງລວມ
bbe [ທາງເລືອກໃນການ] ...
ລາຍລະອຽດ
bbe ເປັນບັນນາທິການຄ້າຍຄື sed ສໍາລັບໄຟລ໌ຖານສອງ. ມັນປະຕິບັດການຫັນເປັນຄູ່ກ່ຽວກັບ
ຕັນຂອງກະແສການປ້ອນຂໍ້ມູນ.
OPTIONS
bbe ຍອມຮັບທາງເລືອກຕໍ່ໄປນີ້:
-b, --block=BLOCK
ຕັນນິຍາມ.
-e, --ສະແດງອອກ=ຄໍາສັ່ງ
ເພີ່ມຄໍາສັ່ງໃສ່ຄໍາສັ່ງທີ່ຈະປະຕິບັດ.
-f, --file=script-file
ເພີ່ມເນື້ອໃນຂອງ script-file ກັບຄໍາສັ່ງ.
-o, --output=ຊື່
ຂຽນຜົນໄດ້ຮັບໃສ່ ຊື່ ແທນທີ່ຈະເປັນຜົນຜະລິດມາດຕະຖານ.
-s, -- ສະກັດກັ້ນ
ສະກັດກັ້ນຜົນຜະລິດປົກກະຕິ, ພິມພຽງແຕ່ສະກັດເນື້ອໃນ.
-?, - ຊ່ວຍ
ບອກທາງເລືອກທີ່ມີຢູ່ທັງຫມົດແລະຄວາມຫມາຍຂອງມັນ.
-V, - ການປ່ຽນແປງ
ສະແດງເວີຊັນຂອງໂຄງການ.
BLOCK ສາມາດຖືກກໍານົດເປັນ:
N:M ຢູ່ໃສ N'th byte ເລີ່ມຕົ້ນ a M bytes long block (byte ທໍາອິດແມ່ນ 0).
:M ຄວາມຍາວຂອງບລັອກໃນກະແສການປ້ອນຂໍ້ມູນແມ່ນ M.
/start/:M
string ການເລີ່ມຕົ້ນ ເລີ້ມຕົ້ນ M ໄບຕ໌ຍາວ.
/start/:/stop/
string ການເລີ່ມຕົ້ນ ເລີ່ມຕັນ ແລະຕັນຈະສິ້ນສຸດຢູ່ທີ່ສະຕຣິງ ຢຸດ.
/start/:
string ການເລີ່ມຕົ້ນ ເລີ່ມຕັນແລະຕັນຈະສິ້ນສຸດໃນປະກົດຕົວຕໍ່ໄປຂອງ ການເລີ່ມຕົ້ນທີ່ຢູ່ ພຽງແຕ່
ທໍາອິດ ການເລີ່ມຕົ້ນ ຖືກລວມເຂົ້າກັບຕັນ.
:/ຢຸດ/
Block ເລີ່ມຕົ້ນໃນຕອນຕົ້ນຂອງກະແສການປ້ອນຂໍ້ມູນ (ຫຼືໃນຕອນທ້າຍຂອງບລັອກທີ່ຜ່ານມາ) ແລະ
ສິ້ນສຸດລົງໃນການປະກົດຕົວຕໍ່ໄປຂອງ ຢຸດ. ສາຍ ຢຸດ ຈະຖືກລວມເຂົ້າກັບຕັນ.
ມູນຄ່າພິເສດ '$' ຂອງ M ໝາຍເຖິງຈຸດສິ້ນສຸດຂອງກະແສ.
ຄ່າເລີ່ມຕົ້ນຂອງບລັອກແມ່ນ 0:$, ຊຶ່ງໝາຍເຖິງກະແສການປ້ອນຂໍ້ມູນທັງໝົດ.
ທັງສອງ ການເລີ່ມຕົ້ນ ແລະ ຢຸດ ສະຕຣິງແມ່ນລວມຢູ່ໃນບລັອກ. ຕົວອັກສອນທີ່ບໍ່ສາມາດພິມໄດ້ສາມາດຫລົບຫນີໄດ້
as
\nnn ທົດສະນິຍົມ
\xnn ເລກຖານສິບຫົກ
\0nn ເລກແປດ
ຕົວອັກສອນ '\' ສາມາດໜີອອກເປັນ '\\'. ລະຫັດ Escape '\a','\b','\t','\n','\v','\f','\r' ແລະ
'\;' ຍັງສາມາດຖືກນໍາໃຊ້.
ຄວາມຍາວ (N ແລະ M) ສາມາດກຳນົດເປັນເລກທົດສະນິຍົມ (n), ເລກຖານສິບຫົກ (xn) ຫຼືເລກແປດ (0n)
ມູນຄ່າ.
ຄໍາສັ່ງ ສະຫຼຸບສັງລວມ
bbe ມີສອງປະເພດຂອງຄໍາສັ່ງ: ຄໍາສັ່ງ block ແລະ byte, ທັງສອງແມ່ນສະເຫມີໄປທີ່ກ່ຽວຂ້ອງກັບປະຈຸບັນ
ຕັນ. ນັ້ນ ໝາຍ ຄວາມວ່າກະແສການປ້ອນຂໍ້ມູນພາຍນອກຂອງທ່ອນໄມ້ຍັງບໍ່ຖືກແຕະຕ້ອງ.
Block ຄໍາສັ່ງ
D [n] ລຶບ nຕັນທີ. ໂດຍບໍ່ມີການ n, ທ່ອນໄມ້ທີ່ພົບເຫັນທັງຫມົດຖືກລົບອອກຈາກຜົນຜະລິດ
stream
I string
ໃສ່ສາຍ string ກ່ອນຕັນ.
A string
ຕື່ມຂໍ້ມູນໃສ່ສະຕຣິງ string ໃນຕອນທ້າຍຂອງຕັນ.
J n ຂ້າມ n blocks, ກ່ອນທີ່ຈະປະຕິບັດຄໍາສັ່ງຫຼັງຈາກຄໍາສັ່ງນີ້.
L n ປ່ອຍໃຫ້ບຼັອກທັງໝົດບໍ່ຖືກດັດແກ້ເລີ່ມຕົ້ນຈາກໝາຍເລກບລັອກ n. ມີຜົນກະທົບພຽງແຕ່ຄໍາສັ່ງ
ຫຼັງຈາກຄໍາສັ່ງນີ້.
N ກ່ອນທີ່ຈະພິມບລັອກ, ຊື່ໄຟລ໌ທີ່ບລັອກເລີ່ມຕົ້ນຈະຖືກພິມອອກ.
F f ກ່ອນທີ່ຈະພິມຕັນ, ກະແສ input offset ໃນຕອນຕົ້ນຂອງຕັນແມ່ນ
ພິມອອກ. f ສາມາດເປັນ H, D ຫຼື O ສໍາລັບຮູບແບບການຊົດເຊີຍ hexadecimal, decimal ຫຼື Octal.
B f ກ່ອນທີ່ຈະພິມບລັອກ, ຈໍານວນບລັອກແມ່ນພິມອອກ (ບລັອກທໍາອິດ == 1) f ສາມາດເປັນ H,
D ຫຼື O ສໍາລັບຮູບແບບເລກຖານສິບຫົກ, ເລກຖານສິບຫຼືແປດຂອງຕົວເລກຕັນ.
> ເອກະສານ ກ່ອນທີ່ຈະພິມຕັນ, ເນື້ອໃນຂອງໄຟລ໌ ເອກະສານ ຖືກພິມອອກ.
< ເອກະສານ ຫຼັງຈາກພິມຕັນ, ເນື້ອໃນຂອງໄຟລ໌ ເອກະສານ ຖືກພິມອອກ.
ໄບຕ໌ ຄໍາສັ່ງ
n ໃນຄໍາສັ່ງ byte ແມ່ນການຊົດເຊີຍຈາກການເລີ່ມຕົ້ນຂອງຕັນໃນປະຈຸບັນ (ເລີ່ມຕົ້ນຈາກສູນ).
r n string
ແທນທີ່ bytes ເລີ່ມຈາກຕຳແໜ່ງ n ດ້ວຍສາຍ string.
i n string
Insert string ເລີ່ມແຕ່ຕໍາແຫນ່ງ n.
p ຮູບແບບ
ເນື້ອໃນຂອງຕັນແມ່ນພິມອອກໃນຮູບແບບທີ່ກໍານົດໂດຍ ຮູບແບບ. ຮູບແບບ ສາມາດມີອັນໃດນຶ່ງ
ຂອງຮູບແບບ H, D, O, A ແລະ B ສໍາລັບເລກຖານສິບຫົກ, ເລກຖານສິບ, Octal, Ascii ແລະ Binary.
s/ຄົ້ນຫາ/ທົດແທນ/
ທົດແທນການປະກົດຕົວທັງຫມົດຂອງ ຄົ້ນຫາ ກັບ ທົດແທນ.
y/ແຫຼ່ງ/ຈຸດຫມາຍປາຍທາງ/
ແປໄບຕ໌ເປັນ ແຫຼ່ງ ກັບ bytes ທີ່ສອດຄ້ອງກັນໃນ ຈຸດຫມາຍປາຍທາງ. ແຫຼ່ງຂໍ້ມູນ ແລະ ຈຸດຫມາຍປາຍທາງ ຕ້ອງ
ມີຄວາມຍາວດຽວກັນ.
d n m|*
ລົບ m bytes ເລີ່ມຈາກ offset n. ຖ້າ * ຖືກກໍານົດແທນທີ່ຈະເປັນ m, ຫຼັງຈາກນັ້ນທັງຫມົດ
bytes ເລີ່ມຈາກ n ຖືກລົບ.
c ຈາກ to
ແປງ bytes ຈາກຮູບແບບ ຈາກ to to. ຮູບແບບສະຫນັບສະຫນູນໃນປັດຈຸບັນແມ່ນ:
BCD Binary ລະຫັດທົດສະນິຍົມ
ASC Ascii
j n ຄໍາສັ່ງຫຼັງຈາກ j-command ແມ່ນຖືກລະເລີຍຄັ້ງທໍາອິດ n bytes ຂອງຕັນ.
l n ຄໍາສັ່ງຫຼັງຈາກຄໍາສັ່ງ l ແມ່ນຖືກລະເວັ້ນຈາກ n'th byte ຂອງຕັນ.
w ເອກະສານ ຂຽນ bytes ຈາກຕັນປະຈຸບັນເພື່ອໄຟລ໌ ເອກະສານ. ຄໍາສັ່ງກ່ອນ w-command ມີ
ສິ່ງທີ່ຈະຖືກຂຽນ. %B ຫຼື %nB ໃນ ເອກະສານ ຈະຖືກແທນທີ່ດ້ວຍໝາຍເລກບລັອກປັດຈຸບັນ.
n ໃນ %nB ແມ່ນຄວາມຍາວຂອງຊ່ອງຂໍ້ມູນ, ນໍາພາສູນໃນ n ເຮັດໃຫ້ຈໍານວນຕັນຖືກປະໄວ້
padded ກັບສູນ.
& c ປະຕິບັດຄູ່ ແລະ ກັບ c.
| c ປະຕິບັດຄູ່ or ກັບ c.
^ c ປະຕິບັດຄູ່ xor ກັບ c.
~ ປະຕິບັດ binary negation.
u n c ໄບຕ໌ທັງໝົດຈາກການເລີ່ມຕົ້ນຂອງບລັອກເພື່ອຊົດເຊີຍ n ຖືກແທນທີ່ດ້ວຍ c.
f n c ໄບຕ໌ທັງໝົດເລີ່ມຈາກການຊົດເຊີຍ n ໃນຕອນທ້າຍຂອງຕັນໄດ້ຖືກທົດແທນໂດຍ c.
x ແລກປ່ຽນເນື້ອໃນຂອງ nibbles (ເຄິ່ງ octet) ຂອງ bytes.
ຕົວອັກສອນທີ່ເບິ່ງບໍ່ເຫັນໃນສະຕຣິງສາມາດຖືກຫລົບໜີດ້ວຍວິທີດຽວກັນກັບສະຕຣິງນິຍາມຂອງບລັອກ.
ຕົວອັກສອນ '/' ໃນຄໍາສັ່ງ s ແລະ y ສາມາດເປັນຕົວອັກສອນທີ່ເຫັນໄດ້.
ໃຫ້ສັງເກດວ່າ D, A, I, F, B, c, s, i, y, p, <, > ແລະ d ຄໍາສັ່ງເຮັດໃຫ້ຄວາມຍາວຂອງການປ້ອນຂໍ້ມູນ.
ແລະຜົນຜະລິດກະແສທີ່ຈະແຕກຕ່າງກັນ.
ຕົວຢ່າງ
bbe -e "s/c:\\temp\\data1.txt/c:\\temp\\data2.txt/" file1
ການປະກົດຕົວທັງໝົດຂອງ "c:\temp\data1.txt" ໃນໄຟລ໌ file1 ຖືກປ່ຽນເປັນ
"c:\temp\data2.txt"
bbe -b 0420:16 -e "r 4 \x12\x4a" file1
ສອງໄບຕ໌ເລີ່ມຈາກຫ້າໄບຕ໌ຂອງບຼັອກຍາວ 16 ໄບຕ໌ ເລີ່ມຕົ້ນທີ່ການຊົດເຊີຍ 0420
(octal) ໃນ file1 ຖືກປ່ຽນເປັນຄ່າເລກຖານສິບຫົກ 12 ແລະ 4a.
bbe -b :16 -e "A \x0a" file1
Newline ຖືກເພີ່ມຫຼັງຈາກທຸກໆຕັນ, ຄວາມຍາວຂອງຕັນແມ່ນ 16.
ໃຊ້ bbe ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net
