Linux基礎優化 |
作者:左婷婷 歸檔:學習筆記 2018/7/17
|
快捷鍵: Ctrl + 1 標題1 Ctrl + 2 標題2 Ctrl + 3 標題3 Ctrl + 4 實例 Ctrl + 5 程序代碼 Ctrl + 6 正文 |
格式說明: 藍色字體:註釋 ×××背景:重要 綠色背景:注意 |
老男孩教育教學核心思想6重:重目標、重思路、重方法、重實踐、重習慣、重總結
學無止境,老男孩教育成就你人生的起點!
聯繫方式:
網站運維QQ交流羣: | |
Linux 385168604 | 架構師 390642196 |
Python 29215534 | 大數據 421358633 |
官方網站: | |
目 錄
1.1 把/oldboy目錄及其子目錄下所有以擴展名 .sh結尾的文件顯示出來。
1.1.1 #$() 先運行括號裏面的命令 然後再執行其他的命令
1.1 把/oldboy目錄及其子目錄下所有以擴展名 .sh結尾的文件顯示出來。
[root@oldboyedu50 oldboy]# find /oldboy/ -type f -name "*.sh"|xargs ls –l
-rw-r--r--. 1 root root 8 Jul 16 17:48 /oldboy/test/del.sh
-rw-r--r--. 1 root root 8 Jul 16 17:48 /oldboy/test.sh
-rw-r--r--. 1 root root 8 Jul 16 17:48 /oldboy/t.sh
1.1.1 #$() 先運行括號裏面的命令 然後再執行其他的命令
[root@oldboyedu50 ~]# ll $( find /oldboy/ -type f -name "*.sh")
-rw-r--r--. 1 root root 8 Jul 16 17:48 /oldboy/test/del.sh
-rw-r--r--. 1 root root 8 Jul 16 17:48 /oldboy/test.sh
-rw-r--r--. 1 root root 8 Jul 16 17:48 /oldboy/t.sh
1.1.2 `` 反引號
[root@oldboyedu50 ~]# ll ` find /oldboy/ -type f -name "*.sh"`
-rw-r--r--. 1 root root 8 Jul 16 17:48 /oldboy/test/del.sh
-rw-r--r--. 1 root root 8 Jul 16 17:48 /oldboy/test.sh
-rw-r--r--. 1 root root 8 Jul 16 17:48 /oldboy/t.sh
1.1.3 方法3
[root@oldboyedu50 ~]# find /oldboy/ -type f -name "*.sh" -exec ls -l {} \;
-rw-r--r--. 1 root root 8 Jul 16 17:48 /oldboy/test/del.sh
-rw-r--r--. 1 root root 8 Jul 16 17:48 /oldboy/test.sh
-rw-r--r--. 1 root root 8 Jul 16 17:48 /oldboy/t.sh
小結:
find命令找出文件交給其他命令 (ls sed rm)
find /oldboy/ -type f -name "*.sh"|xargs ls -l
ll $(find /oldboy/ -type f -name "*.sh" )
find /oldboy/ -type f -name "*.sh" -exec ls -l {} \;
1.2 |與|xargs 區別
1.2.1 |管道
把前一個命令結果 通過管道傳遞給後面命令 傳遞的是文字 文本
1.2.2 |xargs
把前一個命令結果 通過管道傳遞給後面命令 傳遞的是文件名
[root@oldboyedu50 ~]# find /oldboy/ -type f -name "*.sh" |sed -i 's#old#you#g'
sed: no input files //沒有文件
[root@oldboyedu50 ~]# find /oldboy/ -type f -name "*.sh" |xargs sed -i 's#old#you#g'
1.3 PS1環境變量
1.3.1 變量
x + y = 10 ,已知x=11 y=?
1.3.2 環境變量特點
1.大寫的
2.可以在系統中大部分地方 使用 含義基本沒變化
3.系統創建
PS1 ===== 武功祕籍 (葵花寶典)
echo $PS1 ===== 看書
PS1='[\u@\h \W]\$ ' ===== 寫入內容 "欲練此功必先自宮若不自宮也能成功"
1.3.3 PS1 控制命令行樣子
1.3.3.1 #臨時
export PS1='[\u@\h \w]\$ ' //修改PS1
1.3.3.2 #永久
vim /etc/profile #編輯文件
[root@oldboyedu50 /data]# tail -2 /etc/profile
alias net='cat /etc/sysconfig/network-scripts/ifcfg-eth0'
將export PS1='[\u@\h \w]\$ ' 插入最後一行
#生效
source /etc/profile //生效
小結:
1.環境變量 特點
2.查看環境變量內容
1.4 ##SElinux NSA
1.4.1 關閉SElinux
1.4.1.1 永久關閉SElinux - 服務器重啓之後生效
[root@oldboyedu50 ~]# vim /etc/selinux/config //進入vim編輯狀態
# SELINUX= can take one of these three values:
# enforcing 默認 selinux 開啓運行中
# permissive selinux 關閉 警告信息
# disabled selinux徹底關閉
SELINUX=disabled //將SELINUX改爲disabled即可將SElinux關閉
不要給自己找任何理由重啓服務器
vim
u 撤銷
C 把光標到行尾的內容刪除並進入編輯模式
1.4.1.2 臨時關閉SElinux -
[root@oldboyedu50 ~]# getenforce // 查看SElinux是否運行
Enforcing
root@oldboyedu50 ~]# setenforce
usage: setenforce [ Enforcing | Permissive | 1 | 0 ] //爲1時開啓,爲0時關閉
[root@oldboyedu50 ~]# setenforce 0 //關閉SElinux
[root@oldboyedu50 ~]# getenforce
Permissive
1.5 關閉SElinux:
操作前備份,操作後檢查
0.備份
1.臨時
2.永久
3.檢查
esc+ .(點) 使用上一個命令的最後一個東西
1.6 sed修改文件並備份
[root@oldboyedu50 /oldboy]# cat t.sh
yougirl
[root@oldboyedu50 /oldboy]# sed 's#girl#boy#g' t.sh
youboy
[root@oldboyedu50 /oldboy]# sed -i.bak 's#girl#boy#g' t.sh //備份並修改文件
[root@oldboyedu50 /oldboy]# #-i.bak 先備份文件 t.sh.bak
[root@oldboyedu50 /oldboy]# # 然後修改文件內容
[root@oldboyedu50 /oldboy]# cat t.sh
youboy
[root@oldboyedu50 /oldboy]# cat t.sh.bak
yougirl
1.7 防火牆
CentOS 5.x 6.x 防火牆 iptables
CentOS 7.x firewalld
工作應用:
防火牆 服務器擁有公網ip地址 開啓
防火牆 服務器只有內網ip地址 關閉
高併發的時候
1.7.1 關閉iptables
1.7.1.1 臨時
[root@oldboyedu50 /oldboy]# /etc/init.d/iptables stop //臨時關閉防火牆
iptables: Setting chains to policy ACCEPT: filter [ OK ]
iptables: Flushing firewall rules: [ OK ]
iptables: Unloading modules: [ OK ]
[root@oldboyedu50 /oldboy]# /etc/init.d/iptables stop
[root@oldboyedu50 /oldboy]# /etc/init.d/iptables status //查看防火牆狀態
iptables: Firewall is not running.
1.7.1.2 永久關閉- 關閉開機自啓動 軟件在開機的時候自動運行
開機自啓動軟件管理命令
[root@oldboyedu50 /oldboy]# chkconfig iptables off //永久關閉
[root@oldboyedu50 /oldboy]# chkconfig |grep ipt //檢查3是否爲off,爲off說明已關閉
iptables 0:off 1:off 2:off 3:off 4:off 5:off 6:off
關閉iptables 小結:
1.臨時-重啓服務器之後失效
/etc/init.d/iptables stop
2.永久-重啓服務器之後生效
#關閉開機自啓動
chkconfig iptables off
3.檢查
/etc/init.d/iptables status
chkconfig |grep ipt
1.8 字符集就是一套文字符號及其編碼
GBK 國家標準
UTF-8 萬國碼
1.8.1 查看字符集
[root@oldboyedu50 /oldboy]# echo $LANG //查看字符集
en_US.UTF-8
[root@oldboyedu50 /oldboy]# #en_US 語言
[root@oldboyedu50 /oldboy]# #UTF-8 字符集
[root@oldboyedu50 /oldboy]# #語言.字符集
1.8.2 修改字符集-臨時
[root@oldboyedu50 /oldboy]# export LANG=zh_CN.UTF-8 //修改字符集
[root@oldboyedu50 /oldboy]# echo $LANG
zh_CN.UTF-8
1.8.3 永久修改字符集
[root@oldboyedu50 /oldboy]# cat /etc/sysconfig/i18n //永久修改字符集
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"
[root@oldboyedu50 /oldboy]# source /etc/sysconfig/i18n //生效
[root@oldboyedu50 /oldboy]# echo $LANG //檢查
en_US.UTF-8
1.9 linux顯示中文亂碼:
1.linux系統的字符集與遠程連接工具不同
1.10 總結:
1.find命令找出文件交給其他命令(ls rm sed) 三種
2.環境變量:PS1 LANG(必須會修改)
3.關閉SElinux和iptables
4.如何修改字符集
1.11 預習
1.linux顯示中文亂碼如何解決與排查
2.linux目錄與目錄特點
3.幾個簡單的文件/proc/cpuinfo /proc/meminfo /proc/loadavg /proc/mounts