初學者介紹尖括號。
-- Paul Brown
Bash 內置了很多諸如 ls、cd、mv 這樣的重要的命令,也有很多諸如 grep、awk、sed 這些有用的工具。但除此之外,其實 Bash 中還有很多可以 起到膠水作用 的標點符號,例如點號(.)、逗號(,)、括號(<>)、引號(")之類。下面我們就來看一下可以用來進行數據轉換和轉移的尖括號(<>)。
如果你對其它編程語言有所了解,你會知道尖括號 < 和 > 一般是作為邏輯運算符,用來比較兩個值之間的大小關系。如果你還編寫 HTML,尖括號作為各種標簽的一部分,就更不會讓你感到陌生了。
在 shell 腳本語言中,尖括號可以將數據從一個地方轉移到另一個地方。例如可以這樣把數據存放到一個文件當中:
ls > dir_content.txt
在上面的例子中,> 符號讓 shell 將 ls 命令的輸出結果寫入到 dir_content.txt 里,而不是直接顯示在命令行中。需要注意的是,如果 dir_content.txt 這個文件不存在,Bash 會為你創建;但是如果 dir_content.txt 是一個已有的非空文件,它的內容就會被覆蓋掉。所以執行類似的操作之前務必謹慎。
你也可以不使用 > 而使用 >>,這樣就可以把新的數據追加到文件的末端而不會覆蓋掉文件中已有的數據了。例如:
ls $HOME > dir_content.txt; wc -l dir_content.txt >> dir_content.txt
在這串命令里,首先將家目錄的內容寫入到 dir_content.txt 文件中,然后使用 wc -l 計算出 dir_content.txt 文件的行數(也就是家目錄中的文件數)并追加到 dir_content.txt 的末尾。
在我的機器上執行上述命令之后,dir_content.txt 的內容會是以下這樣:
Applications
bin
cloud
Desktop
Documents
Downloads
Games
ISOs
lib
logs
Music
OpenSCAD
Pictures
Public
Templates
test_dir
Videos
17 dir_content.txt
你可以將 > 和 >> 作為箭頭來理解。當然,這個箭頭的指向也可以反過來。例如,Coen brothers (LCTT 譯注:科恩兄弟,一個美國電影導演組合)的一些演員以及他們出演電影的次數保存在 CBActors 文件中,就像這樣:
John Goodman 5
John Turturro 3
George Clooney 2
Frances McDormand 6
Steve Buscemi 5
Jon Polito 4
Tony Shalhoub 3
James Gandolfini 1
你可以執行這樣的命令:
sort < CBActors
Frances McDormand 6 # 你會得到這樣的輸出
George Clooney 2
James Gandolfini 1
John Goodman 5
John Turturro 3
Jon Polito 4
Steve Buscemi 5
Tony Shalhoub 3
就可以使用 sort 命令將這個列表按照字母順序輸出。但是,sort 命令本來就可以接受傳入一個文件,因此在這里使用 < 會略顯多余,直接執行 sort CBActors 就可以得到期望的結果。
如果你想知道 Coens 最喜歡的演員是誰,你可以這樣操作。首先:
while read name surname films; do echo $films $name $surname > filmsfirst.txt; done < CBActors
上面這串命令寫在多行中可能會比較易讀:
while read name surname films;\
do
echo $films $name $surname >> filmsfirst;\
done < CBActors
下面來分析一下這些命令做了什么:
執行完以后,查看 filmsfirst 文件,內容會是這樣的:
5 John Goodman
3 John Turturro
2 George Clooney
6 Frances McDormand
5 Steve Buscemi
4 Jon Polito
3 Tony Shalhoub
1 James Gandolfini
這時候再使用 sort 命令:
sort -r filmsfirst
就可以看到 Coens 最喜歡的演員是 Frances McDormand 了。(-r 參數表示降序排列,因此 McDormand 會排在最前面)
via: https://www.linux.com/blog/learn/2019/1/understanding-angle-brackets-bash
作者: Paul Brown 選題: lujun9972 譯者: HankChow 校對: wxy
本文由 LCTT 原創編譯, Linux中國 榮譽推出
TML教程
超文本標記語言(英語:HyperText Markup Language,簡稱:HTML)是一種用于創建網頁的標準標記語言。
您可以使用 HTML 來建立自己的 WEB 站點,HTML 運行在瀏覽器上,由瀏覽器來解析。
在本教程中,您將學習如何使用 HTML 來創建站點。
HTML 很容易學習!相信您能很快學會它!
本教程包含了數百個 HTML 實例。
使用本站的編輯器,您可以輕松實現在線修改 HTML,并查看實例運行結果。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>孫叫獸的博客</title>
</head>
<body>
<h1>我的第一個標題</h1>
<p>我的第一個段落。</p>
</body>
</html>
HTML 文檔的后綴名
.html
.htm
都可以。
實例:
<!doctype html>
<html>
<header>
<meta charset="utf-8">
<title>孫叫獸的博客</title>
</header>
<body>
<h1>這是我的標題</h1>
<p>這是我的段落</p>
</body>
</html>
實例解析
什么是HTML?
標簽
<標簽>內容</標簽>
html元素
“HTML 標簽” 和 “HTML 元素” 通常都是描述同樣的意思.
但是嚴格來講, 一個 HTML 元素包含了開始標簽與結束標簽,如下實例:
HTML 元素:
<p>這是一個段落</p>
web瀏覽器
Web瀏覽器(如谷歌瀏覽器,Internet Explorer,Firefox,Safari)是用于讀取HTML文件,并將其作為網頁顯示。
瀏覽器并不是直接顯示的HTML標簽,但可以使用標簽來決定如何展現HTML頁面的內容給用戶
html網頁結構
<html>
<head>
<title>頁面標題</title>
</head>
<body>
<h1>這是一個標題</h1>
<p>這是一個段落。</p>
<p>這是另外一個段落。</p>
</body>
</html>
html的版本:
<!DOCTYPE>聲明
<!DOCTYPE>聲明有助于瀏覽器中正確顯示網頁。
網絡上有很多不同的文件,如果能夠正確聲明HTML的版本,瀏覽器就能正確顯示網頁內容。
doctype 聲明是不區分大小寫的,以下方式均可:
<!DOCTYPE html>
<!DOCTYPE HTML>
<!doctype html>
<!Doctype Html>
html5
<!DOCTYPE html>
html4
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML4 Transitional//EN""
http://www.w3.org/TR/html4/loose.dtd">
xhtml1.0
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
中文編碼
目前在大部分瀏覽器中,直接輸出中文會出現中文亂碼的情況,這時候我們就需要在頭部將字符聲明為 UTF-8。
學習一門編程語言之前,了解它的特性,帶著對特性的好奇和疑問去學習是最快最好的學習方法。就像你知道某個地方有很多寶藏,帶著藏寶圖去尋找寶藏,你一定會大有收獲的。
編程語言就是人與計算機進行溝通的語言,在現實生活中,見什么人說什么話我們都很清楚,那在與計算機溝通的世界中,做什么事用什么編程語言溝通也是同樣的道理,前提就是我們要了解這些編程語言,在你需要選擇的時候做出正確的判斷,這也正是我寫此篇文章的意義。
HTML的英文全稱是 Hyper Text Marked Language,中文意思為超文本標記語言。
什么是超文本標記語言?我們先對超文本標記這五個字進行一一的拆分,然后去更好的理解它的意思。在理解超文本時,我們先來理解一下文本在我們的日常生活中代指的是什么東西?
文本包含了比如說你新建的一個Word文檔,一個txt文件,甚至一個Html文件。這三個文件有相同的地方, 也有不同的地方。
相同的地方在于不論是Word文檔,還是txt文件或者是Html文件,我們都能編寫文本的內容。Word文檔的不同在于我們可以在Word文檔中設置一些超鏈接,放一些圖片等操作。
txt文件就有一定的局限性,比如你放一張圖片或者設置超鏈接等這些行為都是不行。在Html文件中,可以存放文本、圖片、音頻、視頻等,甚至在網頁中見到的一些很炫酷的小游戲,都可以在Html文件中去編寫。
那接下來解釋下超文本。我們在Html文件中編寫代碼,其實編寫的是超文本。所謂超文本,大家應該能聯想到超,即超出文本,超文本比文本更高一級,它包含了我們常見的音頻、視頻以及超鏈接等。
這些被我們稱為超文本,在Html文件里面既能存放這些內容,也能存放文本內容,甚至是文章里的一級標題、二級標題、列表、選項等,都可以通過HTML代碼去編寫,這些內容我們就稱為超文本。
那么這些內容到底用哪些來去展現或展示呢?標記。
什么是標記呢?
用百度官網來分析一下“標記”,在網頁頁面上存放很多的內容,有超鏈接、圖片、輸入框等。我們先看看右上角的新聞字樣,這是一個超鏈接,我們看下源碼,打開后的樣子是這樣的:
我們把藍色的新聞部分,也就是我用紅框標記的部分復制一下,其他代碼刪除:
“新聞”被左邊和右邊的“a”包裹起來了,這就構成了超鏈接,這就像我們常見的書名號。如果我們單是輸出紅樓夢字樣,就是一個文本,但如果用《》書名號包裹起來,《紅樓夢》,大家都能知道這是一本書。
把包裹在“新聞”兩邊的a標簽對應包裹在紅樓夢兩邊的書名號來看很類似。用書名號這個標記把紅樓夢給包裹起來,就叫做書名,同理,用帶尖括號的a這個標記把新聞這個文本內容給包裹起來,在網頁中稱為超鏈接,這對帶尖括號的a就叫做標記。
標記是用HTML自己的語法規則把文本內容給包裹起來,這就叫做標記。這種標記的書寫也非常簡單,包裹在文本左邊的叫開始標記,包裹在文本右邊的叫結束標記。我們看到的網頁中顯示的一級標題、二級標題、超鏈接、圖片、音頻等內容其實學習它們所對應的標記就可以了。
接著我們來看下HTML從最原始到現在至今整個HTML語言的歷史發展過程。
HTML5的誕生,標記著互聯網時代的發展。比如在HTML5里面誕生的音頻、視頻、圖像、動畫等都做了新的標準,它對于瀏覽器的兼容也是得到了一定的處理,由此可見,HTML的整個歷史發展目前為止我們所使用的版本主要是99年誕生的HTML 4.01以及2014年誕生的HTML5。
時代在進步,科技在發展,這個超文本標記語言從HTML1.0版本發展到如今的HTML5版本,已經有了極大的改善。
在以前的HTML版本中,常用的是對文本的編輯、超鏈接、圖片等,其用途很廣泛,許多公司用來創建和發布消息,比如布告、技術手冊、各種信函等,都能用它來描述。
HTML是一門嚴謹的編程語言,有組織性、模塊化、規范化的。不過對于開發者而言,不同瀏覽器HTML的兼容性是考慮的問題。隨著HTML5的誕生,我們迎來了一個新的網絡世紀,各種動畫、音頻、視頻、圖像等炫酷的東西都可以做。還有各種小程序、小游戲以及App的開發應用數不勝數,其兼容性也得到了很大的改善,這意味著對前端的需求以及重視程度都有了極大的改變。
HTML是前端很重要的一環,我們學好它才能在前端大軍中齊頭并進,在各種應用小程序的使用中游刃有余,未來的美好生活就掌握在你的手中。
【END】
*請認真填寫需求信息,我們會在24小時內與您取得聯系。