VLC Stream ?Subtitles? of ANY File/Language To Any Smart TV| Roku| Chromecast| Apple TV| Fire TV
Talaan ng mga Nilalaman:
Madalas kapag nagtatrabaho sa mga file ng teksto kakailanganin mong hanapin at palitan ang mga string ng teksto sa isa o higit pang mga file.
sed
ay isang s tream ed itor. Maaari itong magsagawa ng pangunahing pagmamanipula ng teksto sa mga file at mga stream ng pag-input tulad ng mga pipelines. Sa
sed
maaari kang maghanap, hanapin at palitan, ipasok, at tanggalin ang mga salita at linya. Sinusuportahan nito ang pangunahing at pinalawak na mga regular na expression na nagbibigay-daan sa iyo upang tumugma sa mga kumplikadong pattern.
, pag-uusapan natin kung paano mahanap at palitan ang mga string ng
sed
. Ipapakita rin namin sa iyo kung paano magsagawa ng isang recursive na paghahanap at palitan.
Hanapin at Palitan ang String na may
sed
Mayroong maraming mga bersyon ng
sed
, na may ilang mga pagkakaiba sa pagganap sa pagitan nila. Ang macOS ay gumagamit ng bersyon ng BSD at karamihan sa mga pamamahagi ng Linux ay kasama ng GNU
sed
pre-install nang default. Gagamitin namin ang bersyon ng GNU.
Ang pangkalahatang anyo ng paghahanap at pagpapalit ng teksto gamit ang
sed
kumukuha ng sumusunod na form:
sed -i 's/SEARCH_REGEX/REPLACEMENT/g' INPUTFILE
-
-i- Sa pamamagitan ng default nasedmagsusulat ng output nito sa karaniwang output. Ang pagpipiliang ito ay nagsasabi sasedupang i-edit ang mga file sa lugar. Kung ang isang extension ay ibinibigay (ex -i.bak) isang backup ng orihinal na file ay malilikha.s- Ang kapalit na utos, marahil ang pinaka ginagamit na utos sa sed./ / /- character na Delimiter. Maaari itong maging anumang character ngunit karaniwang ang slash (/) na character ay ginagamit.SEARCH_REGEX- Normal na string o isang regular na expression upang maghanap.REPLACEMENT- Ang tali ng kapalit.g- watawat ng pandaigdigang kapalit. Bilang default, binabasa nisedang file line ayon sa linya at binabago lamang ang unang pangyayari ngSEARCH_REGEXsa isang linya. Kapag ibinigay ang kapalit na watawat, ang lahat ng mga pangyayari ay papalitan.INPUTFILE- Ang pangalan ng file na nais mong patakbuhin ang utos.
Ito ay isang mahusay na kasanayan upang ilagay ang mga quote sa paligid ng argumento upang ang mga shell meta-character ay hindi mapalawak.
Tingnan natin ang mga halimbawa kung paano gamitin ang
sed
utos upang maghanap at palitan ang teksto sa mga file sa ilan sa mga karaniwang ginagamit na pagpipilian at watawat.
Para sa mga layunin ng pagpapakita, gagamitin namin ang sumusunod na file:
file.txt
123 Foo foo foo foo /bin/bash Ubuntu foobar 456
sed -i 's/foo/linux/' file.txt
123 Foo linux foo linux /bin/bash Ubuntu foobar 456
Gamit ang pandaigdigang kapalit na flag
sed
pumapalit sa lahat ng mga naganap na pattern ng paghahanap:
sed -i 's/foo/linux/g' file.txt
123 Foo linux linux linux /bin/bash Ubuntu linuxbar 456
Tulad ng iyong napansin, sa nakaraang halimbawa ang substring
foo
loob ng
foobar
string ay pinalitan din. Kung hindi ito ang nais na pag-uugali, gamitin ang expression ng salitang may hangganan (
\b
) sa parehong mga dulo ng string ng paghahanap. Tinitiyak nito ang mga bahagyang salita ay hindi naitugma.
sed -i 's/\bfoo\b/linux/g' file.txt
123 Foo linux linux linux /bin/bash Ubuntu foobar 456
Upang gawing hindi insentibo ang pattern ng case match, gamitin ang watawat
I
. Sa halimbawa sa ibaba ginagamit namin pareho ang
g
at mga watawat:
sed -i 's/foo/linux/gI' file.txt
123 linux linux linux linux /bin/bash Ubuntu linuxbar 456
sed -i 's/\/bin\/bash/\/usr\/bin\/zsh/g' file.txt
Ang mas madali at mas madaling mabasa na opsyon ay ang paggamit ng isa pang delimiter character. Karamihan sa mga tao ay gumagamit ng vertical bar (
|
) o colon (:) ngunit maaari mong gamitin ang anumang iba pang karakter:
sed -i 's|/bin/bash|/usr/bin/zsh|g' file.txt
123 Foo foo foo foo /usr/bin/zsh Ubuntu foobar 456
Maaari ka ring gumamit ng mga regular na expression. Halimbawa upang maghanap sa lahat ng 3 mga numero ng numero at palitan ang mga ito sa
number
string na gagamitin mo:
sed -i 's/\b\{3}\b/number/g' file.txt
number Foo foo foo foo /bin/bash demo foobar number
Ang isa pang kapaki-pakinabang na tampok ng sed ay maaari mong gamitin ang ampersand character
&
na tumutugma sa naitugma na pattern. Ang karakter ay maaaring magamit nang maraming beses.
Halimbawa, kung nais mong magdagdag ng mga kulot na braces
{}
paligid ng bawat 3 numero na numero, uri:
sed -i 's/\b\{3}\b/{&}/g' file.txt
{123} Foo foo foo foo /bin/bash demo foobar {456}
Huling ngunit hindi bababa sa, palaging isang magandang ideya na gumawa ng isang backup kapag nag-edit ng isang file na may
sed
. Upang gawin iyon ay magbibigay lamang ng isang extension sa pagpipilian
-i
. Halimbawa, upang i-edit ang
file.txt
at i-save ang orihinal na file bilang
file.txt.bak
gagamitin mo:
sed -i.bak 's/foo/linux/g' file.txt
ls
Paghahanap at Palitan ang Recursive
Minsan nais mong muling maghanap ng mga direktoryo para sa mga file na naglalaman ng isang string at palitan ang string sa lahat ng mga file. Magagawa ito sa pamamagitan ng paggamit ng mga utos tulad ng
find
o
grep
upang maingat na makahanap ng mga file sa direktoryo at piping ang mga pangalan ng file upang mag
sed
.
Ang sumusunod na utos ay maingat na maghanap para sa mga file sa kasalukuyang direktoryo ng nagtatrabaho at ipasa ang mga pangalan ng file upang mag-
sed
.
find. -type f -exec sed -i 's/foo/bar/g' {} +
Upang maiwasan ang mga isyu sa mga file na naglalaman ng puwang sa kanilang mga pangalan ay gumagamit ng opsyon na
-print0
na nagsasabing
find
mag-print ng pangalan ng file, na sinusundan ng isang null character at pipipa ang output upang mag
sed
gamit ang
xargs -0
:
find. -type f -print0 | xargs -0 sed -i 's/foo/bar/g'
Upang ibukod ang isang direktoryo gamitin ang pagpipilian na-
-not -path
. Halimbawa, kung pinalitan mo ang isang string sa iyong lokal na git repo upang ibukod ang lahat ng mga file na nagsisimula sa tuldok (
.
), Gamitin:
find. -type f -not -path '*/\.*' -print0 | xargs -0 sed -i 's/foo/bar/g'
find. -type f -name "*.md" -print0 | xargs -0 sed -i 's/foo/bar/g'
Ang isa pang pagpipilian ay ang paggamit ng
grep
utos upang maingat na hanapin ang lahat ng mga file na naglalaman ng pattern ng paghahanap at pagkatapos ay i-pipe ang mga filenames upang mag
sed
:
grep -rlZ 'foo'. | xargs -0 sed -i.bak 's/foo/bar/g'
Konklusyon
Bagaman mukhang kumplikado at kumplikado ito, sa una, ang paghahanap at pagpapalit ng teksto sa mga file na may
sed
ay napaka-simple.
Upang matuto nang higit pa tungkol sa mga
sed
utos, pagpipilian, at mga flag bisitahin ang GNU sed manual at Grymoire sed tutorial. Kung mayroon kang anumang mga katanungan o puna, huwag mag-iwan ng komento.
Advanced Renamer: Ang libreng Rename ay isang libreng batch file renaming utility upang palitan ang pangalan ng maramihang mga file sa Windows. I-configure ang paraan ng pag-renaming at palitan ang pangalan ng maramihang mga file at mga folder nang sabay-sabay.
Karamihan sa atin ay nagtapos sa pagkakaroon ng isang grupo ng mga hindi na-order at di-wastong pinangalanan na mga file. Ang pagpapalit ng bawat isa sa kanila nang isa-isa ay isang mahirap na gawain. Ngunit upang gawing mas madali ang iyong gawain, mayroong ilang batch file renaming utilities na magagamit. Ang isa sa kanila ay
Gamitin ang Tapikin para sa tampok na Outlook upang mahanap, ipasok at muling gamitin ang nilalaman
Hinahayaan ka ng bagong Tap para sa Outlook na tampok at gumamit ng may-katuturang nilalaman mula sa loob ng iyong mga takdang-aralin. Tingnan natin kung paano gamitin ang tampok na ito para sa muling paggamit ng nilalaman.
Ang Math Input Panel ay gumagamit ng math recognizer na itinayo sa Windows 7 upang makilala ang mga expression sa kamay ng matematika. Pagkatapos ay maaari mong madaling gamitin ito sa mga word processor o computational tables. Ang Math Input Panel ay dinisenyo upang gamitin sa isang tablet pen sa isang Tablet PC, ngunit maaari mo itong gamitin sa anumang aparato ng pag-input, tulad ng isang touchscreen o kahit isang mouse.
Ang Math Input Panel ay gumagamit ng math recognizer na binuo sa Windows 7 upang kilalanin ang sulat-kamay na mga expression sa matematika. Pagkatapos ay maaari mong madaling gamitin ito sa mga word processor o computational tables.







