一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Linux學(xué)習(xí)筆記(一)——Shell

 喜歡站在山上 2021-01-19

Shell概述

1、 Shell是什么

l Shell是一個命令行解釋器,它為用戶提供了一個向Linux內(nèi)核發(fā)送請求以便運(yùn)行程序的界面系統(tǒng)級程序,用戶可以用Shell來啟動、掛起、停止甚至是編寫一些程序。

l Shell還是一個功能相當(dāng)強(qiáng)大的編程語言,易編寫,易調(diào)試,靈活性較強(qiáng)。Shell是解釋執(zhí)行的腳本語言,在Shell中可以直接調(diào)用Linux系統(tǒng)命令。

Linux學(xué)習(xí)筆記(一)——Shell

2、 Shell的分類

l Bourne Shell:從1979起Unix就開始使用Bourne Shell,Bourne Shell的主文件名為sh。

l C Shell: C Shell主要在BSD版的Unix系統(tǒng)中使用,其語法和C語言相類似而得名

l Shell的兩種主要語法類型有Bourne和C,這兩種語法彼此不兼容。Bourne家族主要包括sh、ksh、Bash、psh、zsh;C家族主要包括:csh、tcsh

l Bash: Bash與sh兼容,現(xiàn)在使用的Linux 就是使用Bash作為用戶的基本Shell。

3、 Linux支持的Shell

l /etc/shells

Shell腳本的執(zhí)行方式

1、 echo輸出命令

[root@localhost ~]# echo [選項] [輸出內(nèi)容]

選項: -e: 支持反斜線控制的字符轉(zhuǎn)換

Linux學(xué)習(xí)筆記(一)——Shell

[root@localhost ~]# echo -e 'ab\bc'

#刪除左側(cè)字符

[root@localhost ~]# echo -e 'a\tb\tc\nd\te\tf'

#制表符與換行符

[root@localhost ~]# echo -e '\x61\t\x62\t\x63\n\x64\t\x65\t\x66'

#按照十六進(jìn)制ASCII碼也同樣可以輸出

[root@localhost ~]# echo -e '\e[1;31m abcd \e[0m'

#輸出顏色

#30m=黑色,31m=紅色,32m=綠色,33m=黃色

#34m=藍(lán)色,35m=洋紅,36m=青色,37m=白色

2、 第一個腳本

[root@localhost sh]# vi hello.sh #!/bin/Bash

#The first program # Author: shenchao (E-mail: shenchao@lampbrother.net)

echo -e 'Mr. Shen Chao is the most honest man in LampBrother'

3、 腳本執(zhí)行

l 賦予執(zhí)行權(quán)限,直接運(yùn)行

? chmod 755 hello.sh

? ./hello.sh [t1]

l 通過Bash調(diào)用執(zhí)行腳本

? bash hello.sh

? sh hello.sh

Bash的基本功能

歷史命令與命令補(bǔ)全

1、 歷史命令

[root@localhost ~]# history [選項] [歷史命令保存文件]

選項:

-c: 清空歷史命令

-w: 把緩存中的歷史命令寫入歷史命令保存文件

~/.bash_history

l 歷史命令默認(rèn)會保存1000條,可以在環(huán)境變量配置文件/etc/profile中進(jìn)行修改

歷史命令的調(diào)用

l 使用上、下箭頭調(diào)用以前的歷史命令

l 使用“!n”重復(fù)執(zhí)行第n條歷史命令

l 使用“!!”重復(fù)執(zhí)行上一條命令

l 使用“!字串”重復(fù)執(zhí)行最后一條以該字串開頭的命令

2、 命令與文件補(bǔ)全

l 在Bash中,命令與文件補(bǔ)全是非常方便與常用的功能,我們只要在輸入命令或文件時,按“Tab”鍵就會自動進(jìn)行補(bǔ)全

命令別名與常用快捷鍵

1、 命令別名

[root@localhost ~]# alias 別名='原命令'

#設(shè)定命令別名

[root@localhost ~]# alias

#查詢命令別名

命令執(zhí)行時順序

1 第一順位執(zhí)行用絕對路徑或相對路徑執(zhí)行的命令。

2 第二順位執(zhí)行別名。

3 第三順位執(zhí)行Bash的內(nèi)部命令。

4 第四順位執(zhí)行按照$PATH環(huán)境變量定義的目錄查找順序找到的第一個命令。

讓別名永久生效

[root@localhost ~]# vi /root/.bashrc

刪除別名

[root@localhost ~]# unalias 別名

2、 Bash常用快捷鍵

Linux學(xué)習(xí)筆記(一)——Shell

10.3.3 輸入輸出重定向

1、 標(biāo)準(zhǔn)輸入輸出

Linux學(xué)習(xí)筆記(一)——Shell

2、 輸出重定向[t2]

Linux學(xué)習(xí)筆記(一)——Shell
Linux學(xué)習(xí)筆記(一)——Shell

3、 輸入重定向

[root@localhost ~]# wc [選項] [文件名]

選項:

- c 統(tǒng)計字節(jié)數(shù)

- w 統(tǒng)計單詞數(shù)

- l 統(tǒng)計行數(shù)

l 命令<文件 把文件作為命令的輸入

l 命令<< 標(biāo)識符

標(biāo)識符 把標(biāo)識符之間內(nèi)容作為命令的輸入

多命令順序執(zhí)行與管道符

1、 多命令順序執(zhí)行

Linux學(xué)習(xí)筆記(一)——Shell

例子: [root@localhost ~]# ls ; date ; cd /user ; pwd

[root@localhost ~]# dd if=輸入文件 of=輸出文件 bs=字節(jié)數(shù) count=個數(shù)

選項:

if=輸入文件 指定源文件或源設(shè)備

of=輸出文件 指定目標(biāo)文件或目標(biāo)設(shè)備

bs=字節(jié)數(shù) 指定一次輸入/輸出多少字節(jié),即把這些字節(jié)看做一個數(shù)據(jù)塊

count=個數(shù) 指定輸入/輸出多少個數(shù)據(jù)塊

例子:

[root@localhost ~]# date ; dd if=/dev/zero of=/root/testfile bs=1k count=100000 ; date

[root@localhost ~]# ls anaconda-ks.cfg && echo yes

[root@localhost ~]# ls /root/test || echo 'no

[root@localhost ~]# 命令 && echo yes || echo no

2、 管道符

命令格式:

[root@localhost ~]# 命令1 | 命令2

#命令1的正確輸出作為命令2的操作對象

顏色顯示

例子:

[root@localhost ~]# ll -a /etc/ | more

[root@localhost ~]# netstat -an | grep 'ESTABLISHED'

[root@localhost ~]# grep [選項] '搜索內(nèi)容' 文件名

選項:

-i: 忽略大小寫

-n: 輸出行號

-v: 反向查找

--color=auto 搜索出的關(guān)鍵字用顏色顯示

通配符與其他特殊符號

1、通配符

Linux學(xué)習(xí)筆記(一)——Shell

[root@localhost ~]# cd /tmp/

[root@localhost tmp]# rm -rf *

[root@localhost tmp]# touch abc

[root@localhost tmp]# touch abcd

[root@localhost tmp]# touch 012

[root@localhost tmp]# touch 0abc

[root@localhost tmp]# ls ?abc

[root@localhost tmp]# ls [0-9]*

[root@localhost tmp]# ls [^0-9]*

Linux學(xué)習(xí)筆記(一)——Shell

3、 Bash中其他特殊符號

Linux學(xué)習(xí)筆記(一)——Shell

反引號與$()

[root@localhost ~]# echo `ls`

[root@localhost ~]# echo $(date)

單引號與雙引號

[root@localhost ~]# name=sc

[root@localhost ~]# echo '$name'

[root@localhost ~]# echo '$name'

[root@localhost ~]# echo ‘$(date)'

[root@localhost ~]# echo “$(date)'


date與--之間有空格; +與%s之間不能有空格

groupdel改為gpasswd

Linux學(xué)習(xí)筆記(一)——Shell

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    日本加勒比中文在线观看| 麻豆91成人国产在线观看| 亚洲色图欧美另类人妻| 高清一区二区三区大伊香蕉| 国产又粗又猛又爽又黄的文字| 精品午夜福利无人区乱码| 日韩在线中文字幕不卡| 成年女人下边潮喷毛片免费| 欧美日韩在线视频一区| 国产一区二区在线免费| 久久国产亚洲精品赲碰热| 亚洲午夜av一区二区| 久久精品国产亚洲av久按摩| 在线观看欧美视频一区| 日韩中文字幕狠狠人妻| 国产熟女高清一区二区| 欧美一级黄片欧美精品| 国产精品久久男人的天堂| 国产麻豆视频一二三区| 激情亚洲内射一区二区三区| 日木乱偷人妻中文字幕在线| 最好看的人妻中文字幕| 亚洲中文字幕人妻av| 国产一级一片内射视频在线| 亚洲日本中文字幕视频在线观看 | 欧美精品久久男人的天堂| 沐浴偷拍一区二区视频| 亚洲视频在线观看你懂的| 中文字幕不卡欧美在线| 欧美午夜视频免费观看| 婷婷九月在线中文字幕| 国产精品免费福利在线| 日韩在线欧美一区二区| 国产又猛又大又长又粗| 精品一区二区三区免费看| 国产一区二区三区不卡| 熟妇久久人妻中文字幕| 欧美国产精品区一区二区三区| 欧美精品在线观看国产| 精品视频一区二区三区不卡| 中文精品人妻一区二区|