主要內(nèi)容:
-
修改字符集
-
特殊符號
-
通配符
一萌丈、修改字符集:
1.什么是字符集:
文字符號在計算機中的標(biāo)識;
2.常見的字符集:
GBK 國標(biāo)
UTF 萬國碼
3.修改字符集:
(1)查看Linux系統(tǒng)字符集:LANG
[root@oldboyedu59 ~]# echo $LANG
en_US.UTF-8
(2)修改-臨時:重新連接后失效
[root@oldboyedu59 ~]# echo $LANG
en_US.UTF-8
[root@oldboyedu59 ~]# export LANG='zh_CN.UTF-8'
[root@oldboyedu59 ~]# echo $LANG
zh_CN.UTF-8
(2)修改-永久:寫入到文件
/etc/locale.conf(CentOS 7)
/etc/sysconfig/i18n(CentOS 6)
[root@oldboyedu59 ~]# vim /etc/locale.conf
LANG="en_US.UTF-8"
[root@oldboyedu59 ~]# source /etc/locale.conf
(3)一條命令設(shè)置字符集:localectl set-locale LANG=en_US.utf8
二揍很、故障案例:Linux下面顯示中文亂碼排錯流程
1.原因
linux下的字符集和xshell字符集不一致
2.排查
(1).查看xshell字符集
(2).查看系統(tǒng)字符集
3.解決
方法一
修改xshell字符集(不通用)
方法二
修改Linux字符集
三郎楼、特殊符號
1.引號系列:
(1)單引號 = ' ' :所見即所得
[root@oldboyedu59 ~]# echo '$LANG {1..5}'
$LANG {1..5}
(2)雙引號 =" ":與單引號類似,雙引號里面的特殊符號會被解析(運行)
[root@oldboyedu59 ~]# echo "$LANG {1..5}"
en_US.UTF-8 {1..5}
(3)不加引號:與雙引號類似 支持花括號(通配符)
[root@oldboyedu59 ~]# echo $LANG {1..5}
en_US.UTF-8 1 2 3 4 5
(4)反引號=:相當(dāng)于$()
優(yōu)先執(zhí)行里面的命令 留下結(jié)果
[root@oldboyedu59 ~]# ls -l `which mkdir`
-rwxr-xr-x. 1 root root 79864 Oct 31 03:16 /usr/bin/mkdir
[root@oldboyedu59 ~]# ls -l $(which mkdir)
-rwxr-xr-x. 1 root root 79864 Oct 31 03:16 /usr/bin/mkdir
2.重定向符號系列
(1)什么是重定向窒悔?
改變數(shù)據(jù)的流向
箭頭的方向就是水流的方向
(2)>或1>
標(biāo)準(zhǔn)輸出重定向
先清空文件內(nèi)容再寫入
[root@oldboyedu59 ~]# echo 123 >oldboy01.log
[root@oldboyedu59 ~]# cat oldboy01.log
123
(2)>>或1>>
標(biāo)準(zhǔn)追加輸出重定向
追加到文件的最后一行
[root@oldboyedu59 ~]# echo 12345 >>oldboy01.log
[root@oldboyedu59 ~]# cat oldboy01.log
123
12345
(3)2>
標(biāo)準(zhǔn)錯誤輸出重定向
[root@oldboyedu59 ~]# cho 12345 2>oldboy01.log
[root@oldboyedu59 ~]# cat oldboy01.log
-bash: cho: command not found
(4)2>>
標(biāo)準(zhǔn)追加錯誤輸出重定向
[root@oldboyedu59 ~]# cat oldboy01.log
12345
[root@oldboyedu59 ~]# cho 12345 2>>oldboy01.log
[root@oldboyedu59 ~]# cho 12345 2>>oldboy01.log
[root@oldboyedu59 ~]# cho 12345 2>>oldboy01.log
[root@oldboyedu59 ~]# cho 12345 2>>oldboy01.log
[root@oldboyedu59 ~]# cho 12345 2>>oldboy01.log
[root@oldboyedu59 ~]# cho 12345 2>>oldboy01.log
[root@oldboyedu59 ~]# cat oldboy01.log
12345
-bash: cho: command not found
-bash: cho: command not found
-bash: cho: command not found
-bash: cho: command not found
-bash: cho: command not found
-bash: cho: command not found
(5)同時把錯誤信息和正確的都記錄到文件中:
[root@oldboyedu59 ~]# alex >>oldboy.txt 2>&1
[root@oldboyedu59 ~]# cat oldboy.txt
-bash: alex: command not found
[root@oldboyedu59 ~]#
(6)<或0<
標(biāo)準(zhǔn)輸入重定向
用來指引命令從哪里讀取數(shù)據(jù)
經(jīng)常與tr呜袁、xargs搭配使用
[root@oldedu59 oldboy]# echo {1..10} >/oldboy/sf.txt
[root@oldedu59 oldboy]# cat /oldboy/sf.txt
1 2 3 4 5 6 7 8 9 10
[root@oldedu59 oldboy]# xargs -n2 </oldboy/sf.txt
1 2
3 4
5 6
7 8
9 10
[root@oldedu59 tmp]# tr 'o' '0' < /tmp/oldboy.txt
0ldb0y
alex
0ldb0y0ldb0y
alex0ldb0y
Oldb0y 0Ldb0y
OLDBOY
(7)<<或0<<
標(biāo)準(zhǔn)追加輸入重定向
只用來和cat配合 向文件中追加一行或多行內(nèi)容
[root@oldboyedu59 ~]# cat >>oldboy.txt <<EOF
> 123
> oldboy
> Linux
> EOF
[root@oldboyedu59 ~]# cat oldboy.txt
-bash: alex: command not found
123
oldboy
Linux
3.管道
(1)基礎(chǔ)含義
把管道前一個命令的結(jié)果通過管道傳遞給后面的命令
管道默認傳遞的是文字符號
(2)find與|xargs的配合
|xargs 把管道傳遞的內(nèi)容從文字符號--->文件名(參數(shù))
(3)例題:找出/oldboy下面以.txt結(jié)尾的文件,查看他的詳細信息(ls -l)
方法一:反引號
[root@oldboyedu59 ~]# ls -l `find /oldboy/ -type f -name '*.txt'`
-rw-r--r-- 1 root root 0 Apr 16 15:18 /oldboy/oldboyA.txt
-rw-r--r-- 1 root root 0 Apr 16 15:18 /oldboy/oldboyB.txt
方法二:|xargs ls -l
[root@oldboyedu59 ~]# find /oldboy/ -type f -name '*.txt' |xargs ls -l
-rw-r--r-- 1 root root 0 Apr 16 15:18 /oldboy/oldboyA.txt
-rw-r--r-- 1 root root 0 Apr 16 15:18 /oldboy/oldboyB.txt
方法三:find的參數(shù) -exec
[root@oldboyedu59 ~]# find /oldboy/ -type f -name '*.txt' -exec ls -l {} \;
-rw-r--r-- 1 root root 0 Apr 16 15:18 /oldboy/oldboyA.txt
-rw-r--r-- 1 root root 0 Apr 16 15:18 /oldboy/oldboyB.txt
4. 表示位置
(1)~
當(dāng)前用戶家目錄
(2).
當(dāng)前目錄
以.開頭的隱藏文件
(3)..
當(dāng)前目錄的上級目錄
(4)-
cd -
su -
5.表示簡單判斷
(1)&&
前一個命令執(zhí)行成功 在執(zhí)行后面的命令
ifdown eth0 && ifup eth0
(2)||
前一個命令執(zhí)行失敗 在執(zhí)行后面的命令
6.其他
(1)#
注釋
root用戶的命令提示符
(2)$
去變量的內(nèi)容
PATH
$() ==``
(3);
命令到分號出結(jié)束
(4)!
!ls
找出最近一次使用過以ls開頭的命令并執(zhí)行:history |grep ls
Ctrl + r=history |grep
四蛉迹、通配符
(1)作用
方便查找想要的文件或目錄
通==通用 Linux下面大部分命令都可以使用
(2)符號
- :所有 任何;文件命中包含
[root@oldboyedu59 ~]# rm -f /oldboy/*.txt
[root@oldboyedu59 ~]# ll /oldboy/
total 0
-rw-r--r-- 1 root root 0 Apr 16 15:03 01.log
-rw-r--r-- 1 root root 0 Apr 16 15:03 02.log
-rw-r--r-- 1 root root 0 Apr 16 15:03 03.log
-rw-r--r-- 1 root root 0 Apr 16 15:03 04.log
-rw-r--r-- 1 root root 0 Apr 16 15:03 05.log
{}:生成序列傅寡,生成數(shù)字或字母序列放妈;進行備份
[root@oldboyedu59 ~]# echo {01..05}
01 02 03 04 05
北救?:任意一個字符(單個字符)
[root@oldboyedu59 /]# ls -d /???
/bin /dev /etc /lib /mnt /opt /run /srv /sys /tmp /usr /var
[root@oldboyedu59 /]# ls -d /?????
/lib64 /media