日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux基础及常用命令的使用

發(fā)布時(shí)間:2025/1/21 linux 67 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux基础及常用命令的使用 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.


linux系統(tǒng)是一個(gè)主要使用命令進(jìn)行日常工作的系統(tǒng),所以了解并熟練掌握常用命令的使用是進(jìn)入linux大門的基本,以下便是linux學(xué)習(xí)過程中學(xué)習(xí)的常用的命令的用法:

linux的日常管理工作一般有如下幾個(gè)部分,下面通過這幾個(gè)方面的管理工作來整理與其相關(guān)的常用命令;


一 ?shell的介紹

1.普通用戶需要直接使用計(jì)算機(jī)系統(tǒng)提供的功能,是非常困難的,因?yàn)橛?jì)算機(jī)系統(tǒng)能接收的指令和人發(fā)出的指令是不相同的,因此需要在計(jì)算機(jī)系統(tǒng)及用戶之間建立一個(gè)可以將相互的指令進(jìn)行“翻譯”的功能。shell就是一個(gè)人機(jī)交互的接口,用戶通過shell,可以完成與計(jì)算機(jī)的對(duì)話。

根據(jù)界面的不同,可將shell分為兩種,圖像化接口(GUI)和命令行接口(CLI);

常用圖形化接口(GUI)

Gnome、KDE、xfce

常用命令行接口(CLI)

bsh、csh、tcsh、ksh、bash、zsh

在linux中命令行接口shell的種類非常的多,在大多數(shù)的linux的發(fā)行版本中默認(rèn)使用的shell是bash。

2.bash的基礎(chǔ)特性

2.1 命令歷史:

當(dāng)用戶在bash中輸入一個(gè)命令時(shí),shell會(huì)在環(huán)境變量中找到命令對(duì)應(yīng)的可執(zhí)行的文件,并提交給系統(tǒng)執(zhí)行,執(zhí)行完成后并將結(jié)果返回給用戶,bash會(huì)將用戶執(zhí)行過的命令記錄在緩沖區(qū)中,以便下一次執(zhí)行此命令是可以更加快速的在緩沖區(qū)中找到,這種命令的記錄被稱為命令歷史。

當(dāng)你在shell中輸入并執(zhí)行命令時(shí),shell會(huì)自動(dòng)把你的命令記錄到歷史列表中,一般保存在用戶主目錄下的.bash_history文件中。默認(rèn)保存1000條,你也可以更改這個(gè)值。

2.1.1 ?命令歷史管理:

命令歷史的管理,其實(shí)是對(duì)相關(guān)的環(huán)境變量的參數(shù)進(jìn)行調(diào)整,環(huán)境變量的調(diào)整分為三種,在/etc/profile文件中進(jìn)行修改對(duì)所有用戶永久生效、/home/USERNAME/.bash_profile文件中修改的設(shè)置對(duì)此用戶永久有效、使用”export 變量名=變量值“命令進(jìn)行修改對(duì)用戶當(dāng)前會(huì)話有效

設(shè)置命令記錄的相關(guān)環(huán)境變量:

HISTSIZE:命令歷史記錄的條數(shù);

HISTFILE:命令歷史文件路徑;

HISTFILESIZE:命令歷史文件大小;

2.1.2 ?查看及管理命令歷史的命令:

history :

命令常用選項(xiàng):

-c:清空緩沖區(qū)中的命令歷史;

-d #: 刪除歷史中指定的命令,#代表命令歷史列表中命令的號(hào)碼;

-a: 把緩沖區(qū)中新的命令歷史手動(dòng)追加到命令歷史文件中;

-r:將 histfiles 的內(nèi)容讀到當(dāng)前shell的緩沖區(qū)中;

-w:將當(dāng)前緩沖區(qū)中的命令歷史寫入命令歷史文件中;

2.1.3 ?調(diào)用過去執(zhí)行過的命令:

!#:調(diào)用歷史中的第#條命令;

!!: 重復(fù)執(zhí)行上一條命令

!string:調(diào)用歷史中最近一個(gè)以string開頭的命令;

2.1.4 ?調(diào)用過去執(zhí)行過的命令的最后一個(gè)參數(shù):

!$

ESC+.

2.2 命令補(bǔ)全(TAB鍵):

補(bǔ)全為兩種,命令補(bǔ)全及路徑補(bǔ)全;

命令補(bǔ)全時(shí),命令的搜索路徑為環(huán)境變量$PATH, 搜索后將結(jié)果以hash算法存入緩存中;

使用TAB鍵可以進(jìn)行補(bǔ)全,兩次TAB鍵將顯示以輸入的部分字符開頭的所有命令,如果是路徑補(bǔ)全,使用方法相同;

使用命令補(bǔ)全,可以提升命令輸入的效率,也可以防止手動(dòng)輸入的失誤。

2.3 命令展開:

~: 展開為當(dāng)前用戶的主目錄;

~USERNAME:展開為指定用戶的家目錄;

{}:可承載一個(gè)以逗號(hào)分隔的列表,并其展開為多個(gè)路徑;

2.4 命令的執(zhí)行結(jié)果

命令執(zhí)行成功:0

命令執(zhí)行失敗:1-255

bash使用特殊變量$?保存最近一條命令的狀態(tài)結(jié)果;

查看命令執(zhí)行的狀態(tài):

[root@localhost ~]# echo $?

2.5 命令別名

命令別名:命令的另一個(gè)引用名稱;

命令別名涉及到的兩個(gè)命令:

alias/unalias

alias: 查看所有已經(jīng)定義別名;

alias ALIASNAME=COMMAND:定義別名;

unalias ALIASNAME:撤銷定義的別名

例如:[root@localhost ~]# alias cls=clear ? ?將clear設(shè)置一個(gè)命令別名為cls的引用

[root@localhost ~]# unalias cls ? ? ?將設(shè)置的cls命令別名取消

兩種設(shè)置可以使用 alias 命令查看效果


如果別名同原命令名,想直接執(zhí)行原命令,則需使用\COMMAND

二 ?linux命令簡(jiǎn)介

1. linux命令分類:

1.1 內(nèi)部命令(shell的內(nèi)建命令)

1.2 外部命令 由第三方提供的工具類程序

1.3 使用type可以查看命令的類型

type命令的格式: type [COMMAND]

例如:[root@localhost ~]# type cd

? cd is a shell builtin ? 顯示此信息說明為shell的內(nèi)建命令,顯示結(jié)果如不是此信息則為外部命令

2. linux命令使用格式:

COMMAND [OPTION]... [ARGS]...

選項(xiàng):用戶啟用或關(guān)閉命令的某個(gè)或某些功能;

短選項(xiàng):-CHARACTER

-l, -h

Note: 多個(gè)短選項(xiàng)如果不合并,則彼此間要有空白字符分隔;可合并,合并時(shí)使用一個(gè)-引導(dǎo),例如-lh;有些短選項(xiàng)自己也需要帶參數(shù),這叫選項(xiàng)參數(shù);

長選項(xiàng):--word

--human-readable, --help

參數(shù):命令的作用對(duì)象;

?向命令提供數(shù)據(jù);

3. 外部命令路徑位置查看工具:

which:

which [options] [--] programname [...]

--skip-alias:禁止列出別名

whereis COMMAND:

顯示二進(jìn)制程序、源碼文件以及幫助手冊(cè)的路徑;

三 ?linux 命令的幫助

1. 命令的幫助參考

內(nèi)部命令: # help COMMAND

外部命令:

(1) 命令自帶的簡(jiǎn)單幫助

# COMMAND --help

# COMMAND -h

(2) 命令手冊(cè)頁

# man [CHPATER] KEYWORD

(3) 信息頁

# info COMMAND

(4) 程序自身的幫助文檔

README、INSTALL、Change

(5) 程序官方提供的Documentation

(6) 發(fā)行版官方提供的文檔

(7) Google,baidu搜索網(wǎng)絡(luò)提供的信息

2. man手冊(cè)的使用

2.1 man手冊(cè)有九種類型,如下:

man1, ..., man9

man1: 用戶命令;

man2: 系統(tǒng)調(diào)用;?

man3:C庫調(diào)用;

man4: 設(shè)備文件及特殊文件;

man5: 配置文件格式;

man6: 游戲;

man7:雜項(xiàng);

man8: 管理命令;

2.2 使用whereis COMMAND 可以查看此命令有哪幾個(gè)類型的man文件

例如:[root@localhost ~]# whereis uniq

uniq: /usr/bin/uniq /usr/share/man/man1/uniq.1.gz /usr/share/man/man1p/uniq.1p.gz

uniq 這個(gè)命令有man1 用戶命令使用的幫助文件;


2.3 man手冊(cè)的查看操作方法:

Space: 向文件尾部翻一屏;

b: 向文件首部翻一屏;

d: 向文件尾部翻半屏;

u: 向文件首部翻半屏;

Return:向文件尾部翻一行;

k或y:向文件首部翻一行;


#: 快速轉(zhuǎn)到第#行;

1G:回到第一行;

G:到最后一行;


q: 退出;


文本搜索:

/keyword:從當(dāng)前位置向尾部搜索

?keyword:從當(dāng)前位置向首部搜索

n:與命令方向相同

N:與命令方向相反

2.4 其它幫助方法

info命令:

info COMMAND


程序自身的幫助文檔:

/usr/share/doc/NAME-VERSION


程序官方文檔:


發(fā)行版的官方文檔:

四 ?linux目錄管理

1. linux的目錄結(jié)構(gòu)

linux使用根文件系統(tǒng)(rootfs)對(duì)目錄結(jié)構(gòu)進(jìn)行管理

linux的各發(fā)行版遵照LSB制定的FHS對(duì)目錄結(jié)構(gòu)進(jìn)行組織,其目錄的結(jié)構(gòu)及目錄的內(nèi)容如下:

/boot: 引導(dǎo)文件存放目錄,例如kernel(vmlinuz)、bootloader(grub, grub2);

/bin: binary,供用戶使用的基本的命令;OS啟動(dòng)即會(huì)用到程序;

/sbin:管理類的基本命令;

/lib: 基本共享庫;內(nèi)核模塊;

/lib64:x86_64系統(tǒng)的共享庫;

/etc:配置文件目錄;

/home/USERNAME: 普通用主目錄的默認(rèn)位置;

/root: 管理員的主目錄;

/media:便攜式移動(dòng)設(shè)備;

/mnt:臨時(shí)文件系統(tǒng)掛載點(diǎn);

/opt: 可選目錄,第三方應(yīng)用程序的默認(rèn)安裝位置;

/dev:devices,設(shè)備文件

b:block devices,random access

c: character deivces,linear access

/proc:

偽文件系統(tǒng);用于輸出內(nèi)核與進(jìn)程的相關(guān)信息;

/sys:

偽文件系統(tǒng);

/srv:services,系統(tǒng)上運(yùn)行服務(wù)用到中間數(shù)據(jù);

/tmp:臨時(shí)文件目錄;

/usr:Universal Shared, Read-only data;

bin:保證系統(tǒng)提供基本功能;

sbin

lib

lib64

include: C程序的頭文件;header files

share:結(jié)構(gòu)化的獨(dú)立數(shù)據(jù)

doc, man

local:現(xiàn)在常用的第三方程序的安裝位置;

bin

sbin

lib

lib64

etc

share

/var:variable data files

cache:應(yīng)用程序緩存數(shù)據(jù)

lib:應(yīng)用程序的狀態(tài)信息數(shù)據(jù)

local:專用于為/usr/local下的應(yīng)用程序存儲(chǔ)可變數(shù)據(jù);

lock:鎖文件

log:日志文件

opt:專用于/opt

spool:應(yīng)用程序的數(shù)據(jù)池;

run:運(yùn)行中的進(jìn)程的相關(guān)數(shù)據(jù);通常用守護(hù)進(jìn)程 的pid文件;

/selinux

2. 目錄管理命令簡(jiǎn)介

2.1 cd (change directory)改變目錄

cd ~: 回主目錄

cd ~USERNAME:切換指定用戶的家目錄

cd -: 回到上一次所在目錄

例如:[root@localhost ~]# cd /etc/sysconfig/network-scripts/ ?切換當(dāng)前目錄為:/etc/sysconfig/network-scripts/

[root@localhost network-scripts]# cd ~ ?將當(dāng)前目錄切換為用戶的主目錄

[root@localhost ~]# cd - ? ? ?返回前一次的當(dāng)前目錄

2.2 pwd ?顯示當(dāng)前工作目錄

[root@localhost network-scripts]# pwd

/etc/sysconfig/network-scripts 是用戶當(dāng)前的工作目錄

2.3 ls ?列出指定目錄中的文件及目錄的信息

命令使用格式:ls [OPTION]... [FILE]...

-l:使用長格式顯示目錄及文件的信息

例如:[root@localhost network-scripts]# ls -l /usr/share/doc/

drwxr-xr-x. ?2 root root 4096 Aug 21 03:55 abrt-2.0.8

d 為目錄型文件

rwxr-xr-x. 權(quán)限

2 ?被硬鏈接的次數(shù)

root root ?目錄的屬主和屬組

4096 ?目錄的大小(默認(rèn)為字節(jié))

Aug 21 03:55 ?被修改的時(shí)間戳

abrt-2.0.8 ?文件名

-d:顯示目錄自身屬性(跟-l選項(xiàng)同時(shí)使用)

-h: human-readable(將列出的文件或目錄大小以易讀的格式顯示,跟-l選項(xiàng)配合使用)

-a:顯示所有文件,包括.開頭的隱藏文件

.: 當(dāng)前目錄

..: 父目錄

-r: reverse,逆序顯示

-R: recusive,遞歸

例如:[root@localhost ~]# ls -lh /boot

-rw-r--r--. 1 root root 105K Jul 24 00:13 config-2.6.32-573.el6.x86_64

drwxr-xr-x. 3 root root 1.0K Aug 21 03:59 efi

drwxr-xr-x. 2 root root 1.0K Aug 21 04:23 grub

-rw-------. 1 root root ?27M Aug 21 04:01 initramfs-2.6.32-573.el6.x86_64.img

-rw-------. 1 root root 5.2M Aug 21 04:23 initrd-2.6.32-573.el6.x86_64kdump.img

drwx------. 2 root root ?12K Aug 21 03:51 lost+found

-rw-r--r--. 1 root root 202K Jul 24 00:14 symvers-2.6.32-573.el6.x86_64.gz

-rw-r--r--. 1 root root 2.5M Jul 24 00:13 System.map-2.6.32-573.el6.x86_64

-rwxr-xr-x. 1 root root 4.1M Jul 24 00:13 vmlinuz-2.6.32-573.el6.x86_64

2.4 mkdir 創(chuàng)建目錄

命令使用格式:mkdir [OPTION] /PATH/TO/SOMEWHERE

常用選項(xiàng):-p:創(chuàng)建父目錄(如果創(chuàng)建目錄時(shí),上一級(jí)目錄不存在,則可以使用-p進(jìn)行遞歸創(chuàng)建)

?-v: 顯示創(chuàng)建過程

例如1:[root@localhost ~]# mkdir -pv /tmp/testmk/test1?

mkdir: created directory `/tmp/testmk'

mkdir: created directory `/tmp/testmk/test1'

例如2: [root@localhost ~]# mkdir -pv /tmp/mkdirkz/{x,y}_{m,n}

mkdir: created directory `/tmp/mkdirkz'

mkdir: created directory `/tmp/mkdirkz/x_m'

mkdir: created directory `/tmp/mkdirkz/x_n'

mkdir: created directory `/tmp/mkdirkz/y_m'

mkdir: created directory `/tmp/mkdirkz/y_n'

使用bash的命令展開的特性,進(jìn)行批量的目錄創(chuàng)建

2.5 rmdir 刪除目錄?

命令使用格式:rmdir /PATH/TO/SOMEWHERE

此命令只刪除空目錄

2.6 tree 以樹形的方式列出指定目錄結(jié)構(gòu)

此命令如果系統(tǒng)中沒有,則需要自行安裝

命令使用格式:tree [OPTION]... [DIR]

選項(xiàng): -d:只列出目錄;

? -L level: 列出指定目錄的指定層數(shù)的文件和目錄;

? -f:以全路徑的方式列出

? -i:結(jié)合-f選項(xiàng)一起使用,列出目錄結(jié)構(gòu),但不顯示分支線

? -p:顯示權(quán)限

? -s:顯示文件大小

? -h:以易懂的方式顯示文件大小


五 ?linux文本文件操作

1. linux中文件的類型

計(jì)算機(jī)的一切資源在linux中都是文件,所以在linux中有如下幾種文件類型:

?-(f):普通文件

d: 目錄文件

b: 塊設(shè)備文件

c: 字符設(shè)備文件

l: 符號(hào)鏈接文件

p: 命名管道文件

s:套接字文件

2. linux中文件的時(shí)間戳類型

構(gòu)成一個(gè)文件有兩種數(shù)據(jù),一種是存儲(chǔ)在文件的數(shù)據(jù)本身,另一種則是元數(shù)據(jù),元數(shù)據(jù)指的是文件的與屬性相關(guān)的信息

每個(gè)文件都有三個(gè)時(shí)間戳:

atime: 文件最近一次被訪問的時(shí)間;

mtime: 文件最近一次被“修改”的時(shí)間;

修改指的是文件的數(shù)據(jù)本身被修改

ctime:文件最近一次被“改變”的時(shí)間;

改變指的是文件的元數(shù)據(jù)發(fā)生的變化

任何一個(gè)除ctime之外的時(shí)間戳發(fā)生變化,ctime時(shí)間也會(huì)相應(yīng)的發(fā)生變化,因?yàn)闀r(shí)間戳本身就是文件的元數(shù)據(jù)

3. 文件管理常用命令

cp ?復(fù)制制定的文件或目錄至指定位置

命令的使用格式:

cp [OPTION]... [-T] SOURCE DEST

cp [OPTION]... SOURCE... DIRECTORY

cp [OPTION]... -t DIRECTORY SOURCE...

常用選項(xiàng):

-r, -R: 遞歸復(fù)制;

-d: 不跟蹤符號(hào)鏈接;

--preserve[=ATTR_LIST]:

mode, ownership, timestamps

context, links, xattr, all

-a: -dR --preseve=all

-i: interactive

-f: force

-v: 顯示過程

當(dāng)復(fù)制文件時(shí),目標(biāo)存在,為目錄,則復(fù)制至目標(biāo)目錄下

?目標(biāo)不存在,則以此文件名命名文件,并復(fù)制源文件的內(nèi)容

?目標(biāo)為文件且存在,則將內(nèi)容覆蓋為源文件的內(nèi)容

,且源有多個(gè),則目標(biāo)必須為目錄,如果目標(biāo)目錄中有相同的文件則覆蓋

當(dāng)復(fù)制目錄時(shí),目標(biāo)存在為目錄則疊加

? 目標(biāo)為文件則不能成功

??

mv ?移動(dòng)制定的文件或者目錄

如果移動(dòng)的源目錄及目標(biāo)目錄相同,則使用此命令的效果相同于重命名

命令使用格式:

mv [OPTION]... [-T] SOURCE DEST

mv [OPTION]... SOURCE... DIRECTORY

mv [OPTION]... -t DIRECTORY SOURCE...

常用選項(xiàng):

-i:交互式

-f:強(qiáng)制

rm ?刪除指定的文件及目錄

命令使用格式?

rm [OPTION]... FILE...

常用選項(xiàng):

? ? -r:?

? ? -f:

? ? -i:

使用 rm -rf / ?命令,系統(tǒng)默認(rèn)會(huì)對(duì)/進(jìn)行特殊的對(duì)待


touch 管理文件的時(shí)間戳

命令格式: touch [OPTION]... FILE... 默認(rèn)將時(shí)間修改為當(dāng)前系統(tǒng)時(shí)間

-a: 只更新atime

-m: 只更新mtime

-t STAMP:

[[CC]YY]MMDDhhmm[.ss]

-c: 不創(chuàng)建空文件

file 文件類型查看

命令格式:file /PATH/TO/SOMEWHERE

stat 顯示文件及文件系統(tǒng)的狀態(tài)

命令格式:stat [OPTION]... FILE...

4. 文本文件查看工具

cat和tac

cat [OPTION]... [FILE]...

-n:顯示行數(shù)

-e: -vE

-E: 顯示行結(jié)束符

-v:顯示非打印字符

more, less

翻屏查看;


more [OPTIONS]... FILE...

-d: 顯示翻頁有退出提示


Space: 向后一屏;

Enter: 向后一行;


b: 向前一屏;


less [OPTION]... FILE...


文本搜索:

/KEYWORD 當(dāng)前位置至文件尾部

?KEYWORD 當(dāng)前位置至文件首部

n: 與命令方向相同的下一個(gè);

N:與命令方向相反的前一個(gè);


head和tail:

head [OPTION]... FILE

tail [OPTION]... FILE

-n # 顯示文件的前/后行數(shù)

-# 非標(biāo)準(zhǔn)寫法

-c #: 顯示前/后#個(gè)字節(jié)


tail的專用選項(xiàng):

-f: follow 跟進(jìn)追加進(jìn)文件的行,常用于監(jiān)控日志

5. 文本文件的處理工具

wc:單詞數(shù)目統(tǒng)計(jì)命令

命令使用格式:wc [OPTION]... FILE...

-l: 顯示行數(shù)

-w: 顯示單詞數(shù)


cut:文件切割命令

cut OPTION... [FILE]...

-d: 指明分隔符;-d' ', -d:

-f:指明要顯示的字段

#:?

#-#:1-3

#,#: 1,3,7


sort:以文件中的字段為關(guān)鍵字,對(duì)文件進(jìn)行排序

sort [OPTION]... [FILE]...

-r: 逆序

-f: 忽略字符大小寫

-u: 排序后去重

-t CHAR: 指明分隔符

-k #: 字段

-n: 表示以數(shù)值大小排序


uniq:報(bào)告或者忽略重復(fù)的行

uniq [OPTION]... [FILE]...

-c: 顯示每行重復(fù)的次數(shù);

-d: 只顯示重復(fù)過的行;

-u: 只顯示不曾重復(fù)的行;

六 ?簡(jiǎn)單系統(tǒng)設(shè)置命令

1. 時(shí)間及日期

RTC:RealTime Clock

System Clock:系統(tǒng)時(shí)鐘


date: 系統(tǒng)時(shí)間

clock, hwclock: 硬件時(shí)間

date:

date [OPTION]... [+FORMAT]:時(shí)間顯示

FORMAT

%F

%D

%T

%H

%M

%S

? ? ? ? date [MMDDhhmm[[CC]YY][.ss]]:時(shí)間設(shè)置


? ? ? ? hwclock

? ? ? ? -s: hctosys, 以硬件時(shí)鐘為準(zhǔn),調(diào)整系統(tǒng)時(shí)間同硬件;

? ? ? ? -w:systohc, 以系統(tǒng)時(shí)鐘為準(zhǔn)


? ? ? ? cal:

? ? ? ? cal [YEAR]


2. 查看當(dāng)前系統(tǒng)被使用的信息

whoami

who

w

3. 關(guān)閉及重啟計(jì)算機(jī)

關(guān)機(jī)或重啟

? ? 關(guān)機(jī):halt, poweroff, init 0, shutdown -h TIME

? ? 重啟:reboot, init 6, shutdown -r TIME


? ? shutdown?

? ? shutdown [OPTIONS...] [TIME] [WALL...]

? ? -r: 重啟

? ? -h: 關(guān)機(jī)

? ? --no-wall

? ? -c


TIME:

+m: 相對(duì)時(shí)長之后執(zhí)行相應(yīng)操作;單位是分鐘;

HH:MM 絕對(duì)時(shí)間

七 ?bash的基礎(chǔ)特性(02)

(1) glob

文本名“通配”

*:匹配任意長度的任意字符;

?:匹配任意單個(gè)字符;

a*b: aab, ab, a123b;?

a?b:?

[]: 匹配指定范圍內(nèi)的任意單個(gè)字符;

[0-9]

[^]:匹配范圍外的任意單個(gè)字符;

[^a-b]


字符集合:

[:lower:] ?表示所有小寫字母

[:upper:] ?表示所有大寫字母

[:alpha:] ?表示所有的字母

[:alnum:] ?字母和數(shù)字

[:digit:] ?表示所有數(shù)字

[:space:] ?表示空白字符

[:punct:] ?表示所有標(biāo)點(diǎn)符號(hào)


例如:ls /etc/[^[:alpha:]][:alpha:]*

ls /etc/[^a-zA-Z][a-zA-Z]*

表示為:顯示/etc/目錄下,以非字母開頭,后面跟了一個(gè)字母及其它任意長度任意字符的文件或目錄;

例如:[root@localhost tmp]# cp -r /etc/*.d /tmp/mageedu.com/


表示為:復(fù)制/etc目錄下,所有以.d結(jié)尾的文件或目錄至/tmp/mageedu.com目錄中;


(2) 組合鍵


Ctrl+l:清屏

Ctrl+a: 切換至命令行首

Ctrl+e:切換至命令行尾

Ctrl+c:取消命令執(zhí)行


Ctrl+u:刪除光標(biāo)所在處至行首的內(nèi)容;

Ctrl+k: 刪除光標(biāo)所在處至行尾的內(nèi)容;



(3) IO重定向和管道


程序:指令+數(shù)據(jù)

讀入數(shù)據(jù):Input

輸出數(shù)據(jù):Output


打開的文件都一個(gè)fd:file descriptor


標(biāo)準(zhǔn)輸入:keyboard, 0, /dev/stdin

標(biāo)準(zhǔn)輸出:monitor, 1, /dev/stdout

標(biāo)準(zhǔn)錯(cuò)誤輸出:monitor, 2, /dev/stderr


I/O重定向:

輸入重定向

輸出重定向:

COMMAND > NEW_POS, COMMAND >> NEW_POS

>:覆蓋重定向;

>>:追加重定向;


set -C

如果覆蓋重定向目標(biāo)文件存在,則禁止執(zhí)行;

>|

set +C


錯(cuò)誤重定向:

2>:覆蓋

2>>:追加


同時(shí)重定向標(biāo)準(zhǔn)輸出流和錯(cuò)誤輸出流:

COMMAND > /path/to/file.out 2> /path/to/file.err


COMMAND > /path/to/file.out 2>&1


COMMAND &> /path/to/file.out


輸入重定向:

<


tr命令: 將set1 替換成 set2

tr [OPTION]... SET1 [SET2]

-d: 刪除字符 (刪除字符時(shí)只有一個(gè)字符集合)

例如:[root@localhost tmp]# ls /tmp | tr a-z A-Z

表示為: 顯示/tmp目錄下的文件和目錄,并且使用大寫字母替換小寫字母


Here Document:<<

cat >> /path/to/somefile << EOF


管道:

COMMAND1 | COMMAND2 | ... ?:將COMMAND1的結(jié)果輸送至COMMAND2的參數(shù)


轉(zhuǎn)載于:https://blog.51cto.com/velen38/1688199

總結(jié)

以上是生活随笔為你收集整理的linux基础及常用命令的使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。