成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

用 Linux sed 命令替換智能引號

運(yùn)維 系統(tǒng)運(yùn)維
用你喜歡的 sed 版本去除“智能”引號。在排版學(xué)中,一對引號傳統(tǒng)上是朝向彼此的。

用你喜歡的 sed 版本去除“智能”引號。

[[424908]]

在排版學(xué)中,一對引號傳統(tǒng)上是朝向彼此的。它們看起來像這樣:

  • “智能引號”

隨著計(jì)算機(jī)在二十世紀(jì)中期的普及,這種朝向往往被放棄了。計(jì)算機(jī)的原始字符集沒有太多的空間,所以在 ASCII 規(guī)范中,兩個雙引號和兩個單引號被縮減為各一個是合理的。如今,通用的字符集是 Unicode,有足夠的空間容納許多花哨的引號和撇號,但許多人已經(jīng)習(xí)慣了開頭和結(jié)尾引號都只有一個字符的極簡主義。此外,計(jì)算機(jī)實(shí)際上將不同種類的引號和撇號視為不同的字符。換句話說,對計(jì)算機(jī)來說,右雙引號與左雙引號或直引號是不同的。

用 sed 替換智能引號

計(jì)算機(jī)并不是打字機(jī)。當(dāng)你按下鍵盤上的一個鍵時,你不是在按一個帶有印章的控制桿。你只是按下一個按鈕,向你的計(jì)算機(jī)發(fā)送一個信號,計(jì)算機(jī)將其解釋為一個顯示特定預(yù)定義字符的請求。這個請求取決于你的鍵盤映射。作為一個 Dvorak 打字員,我目睹了人們在發(fā)現(xiàn)我的鍵盤上的 “asdf” 在屏幕上產(chǎn)生 “aoeu” 時臉上的困惑。你也可能按了一些特殊的組合鍵來產(chǎn)生字符,如 ™ 或 ß 或 ≠,這甚至沒有印在你的鍵盤上。

每個字母或字符,不管它是否印在你的鍵盤上,都有一個編碼。字符編碼可以用不同的方式表達(dá),但對計(jì)算機(jī)來說,Unicode 序列 u2018 和 u2019 產(chǎn)生 ‘ 和 ’,而代碼 u201c 和 u201d 產(chǎn)生 “ 和 ” 字符。知道這些“秘密”代碼意味著你可以使用 sed 這樣的命令以編程方式替換它們。任何版本的 sed 都可以,所以你可以使用 GNU sed 或 BSD sed,甚至是 Busybox sed。

下面是我使用的簡單的 shell 腳本:

  1. #!/bin/sh 
  2. # GNU All-Permissive License 
  3. SDQUO=$(echo -ne '\u2018\u2019'
  4. RDQUO=$(echo -ne '\u201C\u201D'
  5. $SED -i -e "s/[$SDQUO]/\'/g" -e "s/[$RDQUO]/\"/g" "${1}" 

將此腳本保存為 fixquotes.sh,然后創(chuàng)建一個包含智能引號的單獨(dú)測試文件:

  1. ‘Single quote’ 
  2. Double quote” 

運(yùn)行該腳本,然后使用 cat 命令查看結(jié)果:

  1. $ sh ./fixquotes.sh test.txt 
  2. $ cat test.txt 
  3. 'Single quote' 
  4. "Double quote" 

安裝 sed

如果你使用的是 Linux、BSD 或 macOS,那么你已經(jīng)安裝了 GNU 或 BSD 的 sed。這是原始 sed 命令的兩個獨(dú)特的重新實(shí)現(xiàn),對于本文中的腳本來說,它們在功能上是一樣的(不過并不是所有的腳本都是這樣)。

在 Windows 上,你可以用 Chocolatey 安裝 GNU sed。

責(zé)任編輯:未麗燕 來源: Linux中國
相關(guān)推薦

2023-07-03 22:35:50

Linux命令

2021-06-13 09:01:47

SedLinux命令

2019-09-12 08:32:40

Linuxsed命令語法

2024-10-28 16:42:04

Linux編輯器sed 命令

2009-12-25 16:27:25

Linux命令

2023-11-28 13:15:00

Linuxsed工具

2016-12-23 13:07:11

shelllinuxsed

2022-08-17 12:35:26

Linux sed編輯器

2019-08-20 14:29:45

grepsedawk

2019-09-23 15:40:42

sedLinux命令

2024-01-30 18:07:22

Linux命令行工具

2023-11-03 18:09:31

sed文件屬性

2009-08-11 08:58:19

linux命令瀏覽網(wǎng)頁linux命令行參數(shù)linux命令行

2009-07-31 18:48:35

linux vi命令linux vi命令詳替換命令

2010-06-23 16:09:40

Linux Bash

2021-12-19 22:13:46

Linux命令網(wǎng)頁圖片

2018-04-16 10:12:46

Linux命令gunzip

2017-05-15 21:50:54

Linux引號

2021-09-22 15:00:24

Linuxwatch 命令

2021-05-24 06:20:04

Linuxsed命令
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 99精品欧美一区二区三区综合在线 | 亚洲国产激情 | 欧美视频在线观看 | 成人av网站在线观看 | 成人亚洲一区 | 日本不卡一区 | 成人免费网视频 | 日韩av黄色 | 精品国产乱码久久久久久果冻传媒 | av色噜噜| 国产原创视频 | 欧美精品一区在线 | 精品视频久久久久久 | 一本一道久久a久久精品综合蜜臀 | 天天综合久久网 | 亚洲免费视频网站 | 国产精品电影网 | 日韩av免费在线观看 | 欧美在线日韩 | 久久精品亚洲 | 黄频视频 | 亚洲国产一区在线 | 久久久综合精品 | 免费在线观看黄视频 | 国产视频1区2区 | 嫩草国产 | 国产一区二区在线免费观看 | 久久综合伊人一区二区三 | 国产精品日韩在线观看一区二区 | 91在线视频网址 | 欧美一区二区在线看 | 欧美日韩在线一区二区 | 在线欧美一区 | 国产精品v| 久久精品小视频 | 国产成人精品免费视频大全最热 | 日韩精品一区二区三区在线观看 | 在线观看国产三级 | 人人澡人人射 | 亚洲狠狠爱一区二区三区 | 羞羞涩涩在线观看 |