day35-linux操作命令

0.0一條命令殺進程

ps -aux | grep mysql | grep -v grep | awk '{print $2}' | xargs kill -9

ps -ef 或 ps aux 這兩者是最多的來查看靜態(tài)的進程命令
grep mysql 這里以mysql為例
grep -v grep 將grep自身的進程排除在外,-v參數(shù),除..之外
awk '{print $2}' 獲得進程號
xargs命令會將前面命令的輸出結(jié)果(pid)作為"kill -9"命令的參數(shù),并執(zhí)行該命令。"kill -9"會強行殺掉指定進程

0.1用shell腳本殺進程

./kill_process.sh mysql
vim kill_process.sh
#!/bin/bash
ps -ef | grep $1 | grep -v grep | awk '{print $2}' | xargs kill -9

mysql將會作為參數(shù)傳遞給$1

0.2每隔10分鐘自動殺進程

./kill_process.sh mysql
vim kill_process.sh
#!/bin/bash
while [ 1 ]
do
    ps -ef | grep $1 | grep -v grep | awk '{print $2}' | xargs kill -9
    sleep 600
done

1.linux文件操作命令

pwd - 查看當(dāng)前文件路徑
cd - 進入指定文件夾
ls - 查看當(dāng)前文件下文件
ls -a查看當(dāng)前文件夾下所有文件(包括隱藏文件)
ls -l將當(dāng)前文件夾下文件按長格式展現(xiàn)
ls -R遞歸查找當(dāng)前文件夾及其下所有文件夾中的所有文件
mkdir 創(chuàng)建文件夾
rmdir 刪除空文件夾
touch 創(chuàng)建文件
cp 復(fù)制文件 -i詢問 -f 強制 -n 不覆蓋
rm 刪除文件
rm -r刪除文件夾
mv 移動文件(可以用于文件重命名)
mkdir -p a/{b,c}/{d,e,f} 同一層級創(chuàng)建多個目錄
less/more/head/tail查看文件
cat 查看文件內(nèi)容
find'/grep文件查找
找出文件夾 /tmp/xyz/ 下所有的權(quán)限為 642 大小, 在 10k 到 100k 之間的 log 文件 :
find /tmp/xyz/ ?perm 0642 ?size +10k ?size ?100k ?name '*.log'
uniq 去重, 依賴排序, 常跟在 sort 后面使用 sort/ 排序 diff比較文件內(nèi)容的差異 /wc -l統(tǒng)計文件的行數(shù) -w統(tǒng)計單詞計數(shù),-c統(tǒng)計字符計數(shù)
ps -ef /ps -aux查看進程
netstat -nap 查看網(wǎng)絡(luò)連接狀態(tài)
netstat -natp|grep 端口號 - 查看指定端口的網(wǎng)絡(luò)連接狀態(tài)
ifconfig / ip查看網(wǎng)絡(luò)狀態(tài)
top /sar動態(tài)查看所有進程運行情況
查歷史記錄配置時間顯示:bashrc 配置顯示時間:
export HISTTIMEFORMAT="[%y?%m?%d_%T] "
修改 bashrc 后使其生效: source ~/.bashrc
free ?m 以 Mb 為單位查看內(nèi)存
kill 進程 結(jié)束進程 ?1不間斷重啟,-9強制殺死進程,-15正常終止進程
獲取一個命令的幫助的三種方式:
man 命令
info 命令
命令 --help
jobs查看后臺任務(wù)
bg%編號 讓任務(wù)在后臺運行
fg%編號 讓任務(wù)回到前臺運行
redis-server & 讓redis在后臺運行
ctl+z 把任務(wù)放到后臺,但不一定讓他運行
ctl +c 關(guān)閉前臺進程
ps -ef | grep redis-server 查看redis-server的進程
kill 23420 - 結(jié)束id為23420的進程(redis)
netstat -nap | grep 6379 查看端口狀態(tài)
du 查看磁盤占比情況
redis-server > redis.log 2>redis-error.log& 開啟進程不要輸出,直接跳入輸入界面,如果開啟成功,把結(jié)果寫入 redis.log文件,否則寫入redis-error.log文件
redis-cli -h 120.77.222.217 -p 6379 用客戶端連接redis
用長格式列出/etc目錄下所有文件和文件夾并將結(jié)果輸出到result.txt文件中

ls -la /etc > result.txt

在當(dāng)前路徑下名為hello的文件在/usr/bin路徑下創(chuàng)建一個名為gooodbye的軟連接

ln -s hello /usr/bin/goodbye

在vim的命令模式下,回到文件起始位置并刪除5行內(nèi)容的命令是

gg5dd

在當(dāng)前路徑下有一個名為hello.py的文件,其訪問權(quán)限為rw-r--r--,要將該文件訪問權(quán)限修改為rwxr-xr--的命令:

chmod 754 hello.py

將當(dāng)前路徑下所有的文件和文件夾歸檔到一個名為all.tar文件的命令:

tar -cvf all.tar *

在Linux系統(tǒng)下如何將一個進程置于后臺運行,如何查看后臺運行進程,如何將后臺運行的進程置于前臺:
在命令后使用&可以將進程置于后臺運行或者bg%編號也可以將其置于后臺
可以使用jobs命令查看所有的后臺進程
可以用fg%編號將指定編號的后臺進程置于前臺運行
linux系統(tǒng)下查看是否存在名為foo的進程有哪些方式,如果存在如何將其結(jié)束掉
查找名為foo進程可以用ps -aux | grep foo或者top | grep foo
kill 進程號 可以結(jié)束該進程
在linux系統(tǒng)下如何配置一個在每周五19:00自動執(zhí)行的任務(wù):

crontab -e
0 19 * * 5 任務(wù)

linux系統(tǒng)下安裝軟件有哪些方式
使用包管理工具yum或rpm進行安裝
運行二進制安裝程序進行安裝
解壓縮壓縮文件并配置環(huán)境變量來使用軟件
通過源代碼構(gòu)建安裝

2.linux安裝軟件和配置服務(wù)

1.通過包管理工具 yum/rpm/apt/deb
2.源代碼構(gòu)建安裝
wget -網(wǎng)上下載源文件
gunzip /xz -d 解壓
make && make install
ln -s 所在文件夾 快捷方式所在文件夾 生成快捷方式
systemctl start/stop/restart/status/enable/disable 啟動/停止/重啟/查看狀態(tài)系統(tǒng)
service 啟動服務(wù)
配置防火墻:firewalld/iptables
systemctl start firewalld 開啟防火墻
systemctl restart firewalld 重啟

3壓縮及解壓:

tar
壓縮: tar ?czf newfile.tgz files
解壓: tar ?xzf file.tgz
zip
壓縮 zip ?r newfile.zip src?file1 src?file2 ...
解壓 gunzip file.zip

4.磁盤管理

du ?hs 查看文件或文件夾大小
df ?h 查看磁盤分區(qū)的占用情況

5vim的使用

命令模式 --i/a --> 插入模式(編輯模式) --esc-->命令模式--:?/-->末行模式 -- enter-->命令模式
ctrl+e/ctrl+y - 滾動一行
ctrl+f/ctrl+b - 滾動一頁
gg - 到首行
G - 到末行
100G - 將光標移動到第100行
hjkl - 左下上右移動光標
- 光標到行首 0 - 光標到行首 數(shù)字dd -- 從光標所在行開始往后面開始刪,刪除指定數(shù)量行內(nèi)容 :%d -- 刪除所有 dw刪一個單詞 d3w 向前刪除3個單詞 c3w 剪切3個單詞 d -刪到文件結(jié)尾
100dw刪100行
yy/p -復(fù)制/粘貼
數(shù)字yy -- 從光標所在行開始復(fù)制指定行數(shù)的內(nèi)容
u/ctrl+r撤銷/恢復(fù)
ZZ/:wq - 保存退出 -!-強制操作
:%!sort -- 對內(nèi)容排序
/搜索內(nèi)容(正則) -查找 -n/N-向下/上搜索
?搜索內(nèi)容(正則) -查找
:1,$s/搜索的內(nèi)容(正則)/替換后的內(nèi)容/ice 從第一行到最后一行搜索替換
版本比較: vim -d 文件1 文件2
多文件查看 vim 文件1 文件2 文件3
末行模式中輸入ls查看文件(:ls -查看文件)
(:b 文件 -切換文件)
:sp/:vs -水平/垂直拆分窗口
ctrl+w ctrl+w -切換窗口

6設(shè)置vim系統(tǒng)提示及快捷鍵:

用戶主目錄下: vim ~/.vimrc

set nu
set ts=4
set expandtab
set autoindent
set nohls
syntax on
set ruler

7git使用

git init 新建git 倉庫
git add 文件/文件夾 將工作區(qū)內(nèi)容提交到緩存區(qū)
git add -A 將工作區(qū)所有內(nèi)容提交到緩存區(qū)
git commit -m ‘提交信息備注’ 將緩沖區(qū)內(nèi)容提交到本地倉庫
git push ?u origin master 將本地倉庫代碼推送到遠程庫 (第一次在倉庫中提交才加-u)
git reset --hard HEAD^ 回到上一個版本
git reset - - hard 版本號 回到指定的版本
git reset - - hard HEAD 讓工作目錄中的內(nèi)容和倉庫中的內(nèi)容保持一致
git clone <url> 將服務(wù)器上的項目(倉庫)克隆
git diff 差異對比
git pull 將遠程庫代碼下載到工作區(qū)
git status 查看當(dāng)前git狀態(tài)
git log 查看提交歷史/版本
git reset 將本地倉庫代碼取消并添加到工作區(qū)
分支管理
git checkout 分支名 切換分支
git branch 分支名 創(chuàng)建分支
git branch 查看分支
git checkout -b 分支名 切換并創(chuàng)建新的分支
git merge 分支名 讓當(dāng)前分之和指定分之進行合并
git diff 分之1 分之2 查看兩個分之之間的差異
注意: 切換分之、push、pull,這些操作前要保證工作區(qū)是clean

8幾個特殊符號

| 管道符: 把前面的輸出結(jié)果作為后面命令的參數(shù)

重定向: 把前面的輸出結(jié)果重定向到指定的文件中
< 重定向: 把前面的輸出結(jié)果重定向到指定的文件中

8服務(wù)器中安裝python3

[root@iZwz97tbgo9lkabnat2lo8Z ~]# yum install gcc
[root@iZwz97tbgo9lkabnat2lo8Z ~]# wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
[root@iZwz97tbgo9lkabnat2lo8Z ~]# gunzip Python-3.6.5.tgz
[root@iZwz97tbgo9lkabnat2lo8Z ~]# tar -xvf Python-3.6.5.tar
[root@iZwz97tbgo9lkabnat2lo8Z ~]# cd Python-3.6.5
[root@iZwz97tbgo9lkabnat2lo8Z ~]# ./configure --prefix=/usr/local/python36 --enable-optimizations
[root@iZwz97tbgo9lkabnat2lo8Z ~]# yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
[root@iZwz97tbgo9lkabnat2lo8Z ~]# make && make install

... 配置環(huán)境變量 ...
[root@iZwz97tbgo9lkabnat2lo8Z ~]# ln -s /usr/local/python36/bin/python3.6 /usr/bin/python3
[root@iZwz97tbgo9lkabnat2lo8Z ~]# python3 --version 
Python 3.6.5
[root@iZwz97tbgo9lkabnat2lo8Z ~]# python3 -m pip install -U pip
[root@iZwz97tbgo9lkabnat2lo8Z ~]# pip3 --version

9ssh免密登陸

1.在主機和從機上執(zhí)行:ssh-keygen
2.在從機上執(zhí)行: scp id_rsa.pub root@主機地址:~/.ssh/master.pub
(上面這條指令是將從機上的 id_rsa.pub文件拷貝傳遞給到主機的.ssh文件夾下,并且命名為’master.pub’)
3.在主機中的.ssh文件夾中創(chuàng)建authorized_keys文件: touch authorized_keys
4.修改文件authorized_keys的權(quán)限: chmod 600 authorized_keys
5.將master.pub放進authorized_keys文件中: cat master.pub >> authorized_keys
6.在操作主機的時候,需要主機能夠自己免密訪問自己就將自己的公鑰放在自己的authorized_keys文件中

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容