国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

經驗拾憶(純手工)=> Linux實用工具命令

kk_miles / 2092人閱讀

摘要:為啥直接不行呢因為以開頭的最后一條命令是。和和和強制終止最常用的,先提出來。。。。我們可以通過這一條命令來迅速回到程序運行的環境。其實這些配置文件以及這些命令和用戶以及權限等都是有很大關系的。

Ubuntu16升級到18.04
“”“
    有特殊新穎強迫癥癖好可以升下,如果你覺得16.04好用,就根本沒必要升了
”“”
我當時租的 云服務器通常都是16.04,現在估計也是16.04較多
我是個Python3的玩家, 我只想用Python的最新版,或最新標準版3.6-3.7
道理很簡單,我追求新穎,雖然新版不穩定,但是你可以嘗鮮并領先于別人。。。
廢話不多說:
    Ubuntu16.04: 默認裝的是Python2.7 + Python3.4 或3.5 
    Ubuntu18.04: 默認裝的是Python2.7 + Python3.6.+
我喜歡升級系統版本來直接讓對應軟件升級:
    lsb_release -a    # 查看系統版本
    apt update        # 一路選Y   
    apt dist-upgrade  
    apt autoremove    # 一路選Y
    apt install update-manager-core    # 比較重要
    do-release-upgrade -d              # 完事
注:
    如果其中某個命令過程彈出一個黑窗口讓你選擇, 我記得有個 
        core-new-update 字眼的,選這個即可    # 選擇 新 核心
vim多行注釋(Python為例)
Ubuntu是肯定可以用, CentOS我記得好像用不了

直接一套連招:
注釋:
    1. ctrl + v
    2. 按 下 箭頭方向鍵,選中多行
    3. shift + i
    4. 輸入 # 
    5. 按兩下 ESC鍵
    
取消注釋:
    1. ctrl + v
    2. 按 下 箭頭方向鍵,選中多行
    3. 按 x 鍵

注: 此套連招,需要熟練度, 如果不行就多練練。 手不好使,就不要怪我了~~~~
    
    

        
vimrc簡單配置:
“”“
    tab = 4縮進,
    設置行號
    基于文件名的簡單語法高亮
    不要想著刪一行,直接打開vimrc 全部復制上去,保存退出就可以用了
”“”
vi ~/.vimrc
    syntax on
    set nu
    set expandtab
    set tabstop=4
    set shiftwidth=4
    set softtabstop=4
locate查詢庫
locate xxx    # 雖然很簡單的命令,但是如果,一直為下線,并且還想查找新東西,那么需要更新庫
updatedb      # 更新搜索庫, 完事

如果 updatedb命令出錯,那就安裝一下 mlocate就好了:
    yum/apt-get install mlocate
htop查看服務器負載
ubuntu/centos中有 
    top : 此命令可以詳細查看服務器各種負載,資源狀況,但是看著不方便,非常費勁
    htop : top的升級版, 容易看出資源消耗情況
    如果未安裝,可通過  
        apt-get/yum install htop   安裝

    htop -d 0.1    # 0.1秒動態更新一次資源數據。 看起來有一點炫。
    
pkill
ps -el 查看 PId + kill -9 PID        # 這套連招可強制殺死一個進程

但假如你有一連串的python進程 想要 全部KILL
    pkill python            # 完事,和python有關的全KILL掉了,也可以通過通配符* 的方式來簡寫
patree列出進程
tree:    此命令用來列出目錄層級結構
pstree:  用來列出 正在運行的 程序(所有進程的層級結構,進程名)
pstree -p: 以層級的方式,不僅列出進程名, 還列出所有進程的(PID)
alias改名
vi /etc/profile
    alias python="python3"        # 這里是舉個例子,配完,python命令就等價于 python3命令
    alias pip="pip3"
source /etc/profile            # 不要忘記,這條命令 更新一下配置文件
重定向管道 ( > 與 tee )
date > date.txt         # 截流, 屏幕上不顯示
date | tee date.txt  # 不截流, 屏幕上顯示, 并且還能輸入到文件
! 嘆號命令
”“
    !命令前綴 : 運行最后一條以這個前綴開頭的命令
”“
假如下面是你最后按順序再command終端 輸入的四條命令:
    python aaa.py
    python bbb.py
    npm run dev
    pip install ccc

需求:你想迅速運行 python bbb.py這條命令
你只需
    !py    # 即可,  愣著干啥呢, 已經完事了,這條命令就等于你上面那一大串
    
    解惑:
        1. !py   -> py開頭的有兩條,為啥不執行第一條 python aaa.py
            因為 ! 嘆號 的語法意思就是選擇 最后出現以py開頭的執行。
        2. 為啥直接 !p 不行呢?
            因為以p開頭的最后一條命令是 pip install ccc。  這也不是你想要的啊。
ctrl+z 和 & 和 nohup 和 screen
ctrl+c: 強制終止(最常用的,先提出來。。。。 應該都知道的。。)
ctrl+z: 可以把正在運行中的程序掛起到后臺(注意這時候程序就暫停了)
jobs:    粗略列出 后臺掛起的程序
jobs -l: 詳細列出 后臺掛起的程序 (其實就是多列出了個PID)
         kill -9 PID   # 順水推舟地使用此命令來通過 PID 干掉后臺掛起的程序
    
fg:      把掛起的后臺的程序 拿回來繼續執行
fg 程序編號:  如果有多個后臺掛起的程序,選擇一個繼續執行,編號可通過 jobs 查看。

使用場景: 
    加入正在 vim 編輯東西,想跳出編輯器,寫點別的,那么可以 進行下面操作:
    不要保存, 直接 ctrl+z
    然后去 做別的事
    做完了想回到 vim繼續編輯剩下的內容, 直接 fg
    
&: 運行 的 時刻 就直接 放到后臺  (不實用)
    eg: (通常是費時的操作,或者長時間占用 command命令行)
        sleep 100 &        # 這樣費時100秒的操作,直接讓它滾去后臺執行,別占我地方
    局限:
        假如你用  python xxxx.py & 運行一個web服務器,雖然它會滾去后臺一直運行。
        前臺command界面看起來很干凈了。
        但是,如果有用戶請求過來, 你服務器收到打印在終端的信息 可不會乖乖打印在后臺。
        打印信息會鉆出來到前臺command界面來惡心你。。。。。
        為了解決這一問題, 請移步 下面 ...

nohup: (通常和 上面的 & 聯合使用)     (實用性一般)
    eg: 同樣運行一個服務器
        nohup python xxx.py &        
            #  它會乖乖的滾去后臺執行,并且將要打印的消息 也不會打印到前臺,也不會打印到后臺。
                那打印的內容去哪了呢??
                nohup會自動給你 把打印的東西重定向 到一個  nohup.out文件,通常在當前目錄下
            #  這時你的前臺command 就不會受到 騷擾了。。。。
    也許你以為它很好用了,可以完美的決絕運行一個費時的進程。但是 它依然是個 loser。。.
    局限:
        當我一直用 nohup.out 部署一些服務程序的時候,一部署就是很多天。
        當時學校斷電(我租的阿里云ECS服務器). 雖然服務器可以不間斷的執行。
        但是 我需要 用 xshell 一直去遠程 查看我的 程序運行的怎么樣了啊, 是否崩了?
        可惜的是,每次xshell關閉了,你再上去, 想找 通過 nohup & 連招 放到后臺程序的時候,
        你會痛苦無比。。。非常慘
        后來。。。。。。。。。
        
screen: (會話機制)  
    沒錯,后來我就發現了 這個 screen工具 
    如果你那里沒有,就安裝一下嘍:  apt-get / yum install screen 
    然后需要配置一下:
        vi ~/.screenrc       # 創建文件        
            shell -$SHELL    # 輸入此行內容,保存退出
    至于為何配置這個: 說實話我有點忘了
        貌似不同screen會話對于不同的shell 權限有限制,導致很多東西用不了,so do it
    
    直接說一套我常用且超級實用連招把:
    eg:
        screen -S 會話名       # 創建 并 進入這個會話(就像進入另一個世界,但資源共享)
        python xxx.py         # 舉例子,這是我的爬蟲程序,需要運行 三天
        ctrl + a + d          # 跳出會話,回到正常命令行,但是這個會話以及你的程序依然在運行,
        ....... 這段時間(除了關閉服務器)你做什么都行,關閉 shell也可以的。
        screen -r 上面的會話名    # 恢復到會話中,  你會發現,爬蟲程序還在那里好好的運行呢。
        
        如果你忘記會話名了,不要緊:
        screen -ls     # 這條命令會列出所有 你創建過的會話,你也可以看到會話名
        
    總結:
        所以,我不知道閣下能不能感受到 screen的魅力。
        我們可以 通過  screen -r 這一條命令來 迅速回到程序運行的環境。
        nohup &: 你用這個執行的程序,關了 xshell, 你再連,你就不好找這個運行的程序了
        screen 有一套完好的系統(就像有開關一樣)來控制會話
               你進入screen會話中寫程序,screen 自然就能有條不紊的管理好 你程序的運行狀態

        舉個白話例子:
            你正遛二哈呢,突然有急事:
            nohup & :  你說:‘二哈,等我回來,自己玩把’        
                       你回來時, 二哈跑丟了。 (不受控制,程序找不到了,雖然可以花力氣找到)
            screen  :  你說:‘二哈,等我回來,自己玩吧,但我要把你拴起來’        
                       你回來時, 二哈還在那里乖乖的玩。(程序有效的受到控制,你可以輕松定位)
sudo su等操作
不好意思,用了好幾年linux:
    什么 su- su 之類的,  我至今都沒搞太明白。。。。。。。。。。

但是,我只用下面這一條命令,這些年就沒遇到過問題:
    sudo -s    # 變為root, 如果你之前輸入過密碼, 這條命令還會免去讓你輸入密碼的環節
環境變量
把某路徑加入到環境變量中:
    vi /etc/profile
        export PATH=$PATH:/XXX/XX

做一些配置:
    vi /etc/profile            
    vi ~/.bashrc 
    等修改完后
    source /etc/profile        # 用一個 source 命令執行一下使配置更新生效
    
注: Linux-shell我研究的不深,所以這里可能有些說的不是特別明朗。
    其實 這些配置文件 以及 source . sh bash 這些命令 和 用戶 以及權限等都是有很大關系的。   
    有興趣可自行深入了解
SSH遠程連接小坑
假如你的 xshell 連接不上遠程服務器, 可能未開啟 或 未安裝 sshd服務
如下命令即可:
    sudo apt-get install openssh-client     # 安裝客戶端配置
    sudo apt-get install openssh-service    # 安裝服務器配置
    systemctl start sshd.service            # 開啟服務

如果你的普通用戶可以連接,但是你的root不能登錄:
    vim /etc/sshd/ssh_config
        PermitRootLogin yes        # 找到這個改為yes , 保存退出就完事了
    
MySQL5.7+/MariaDB修改密碼小坑
當閣下還在停留在Mysql5.7版本之前,修改密碼可以用下面這兩種方式:
    mysqladmin -uroot password -p
    或內部設置:
    update user set password=password("root") where user="root"

但是 MySQL5.7 之后 或者 MariaDB ,上面這倆方法 都不能 修改密碼了。
正確修改方式:
    先進入MySQL交互式: MySQL -uroot -p 

    update mysql.user set authentication_string=password("密碼") where user="用戶名"
    update user set plugin="mysql_native_password";
    flush privileges
    
    最后重啟服務, 完事
    
另外,值得提醒的一點容易出現的問題:
    無論你連接的是什么數據庫,如果你連不上
    
    首先你應該想到的是,數據庫配置文件:
        bind 0.0.0.0        # 每種數據庫幾乎都需要先改成這樣,才能被外界訪問
        
    其次,你用的是云服務器的話
        看看是否放通了 對應數據庫的寬口
        
    最后,是否開了防火墻:
        沒記錯的話,Centos 和 Ubuntu 防火墻不是同一種,真正需要關閉可自行百度
        
其他命令
"""
    一時間也記不起來還用過哪些了
"""

wc             : 統計字,詞,行(自己選參數)
curl           : 可以請求 url,并返回數據(相當于一個小小爬蟲),也可以向某個接口發送請求
ssh-keygen     :生成公私密鑰
cd -           : 跳回到上一次的路徑
lsb_release -a : 查看Linux發行版信息
grep           : 過濾字符
tar            : 壓縮/解壓
netstat        : 查端口
等

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/45125.html

相關文章

  • 經驗拾憶手工)=> Python高階函數操作

    摘要:解釋就相當于把每個序列元素的每一個單獨用一個管道函數處理,再把他們按順序組合成一個新可迭代對象注意這個管道函數只能是單參數函數,如果想傳遞多個參數怎么辦使用偏函數怕有些人看不懂,這里就不用了,而是用普通函數定義方式固定值固定值固定值固定值固 map In [25]: list(map(lambda a:a**2, [1,2,3,4])) Out[25]: [1, 4, 9, 16] 解...

    Elle 評論0 收藏0
  • 經驗拾憶手工)=> Python基本數據類型

    摘要:不要疑惑,告訴你答案這個代表正負號的正。雖然一點技術含量沒有,但是你要懂序列也許叫可迭代對象更為合適,但是我喜歡叫序列。 數據結構 可變類型與不可變類型(重頭戲) 基操: 可變類型:[], {} # 可增刪改 查 不可變類型: int float str () # 無法增刪改, 只可查 升操: + 與...

    Andrman 評論0 收藏0
  • 經驗拾憶手工)=> Python三程

    摘要:多線程對于爬蟲方面也可以表現出較好的性能。計算密集型就別想多線程了,一律多進程。所以同一時刻最大的并行線程數進程數的核數這條我的個人理解很模糊,參考吧多線程多線程有種通過的那種方式,非常普遍,此處就不寫了。 GIL的理解 GIL這個話題至今也是個爭議較多的,對于不用應用場景對線程的需求也就不同,說下我聽過的優點: 1. 我沒有用過其他語言的多線程,所以無法比較什么,但是對于I/O而言,...

    Snailclimb 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<