[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/We2one/Notes/master/python-basic-notes/python-days/Day_20.md [Back]  [Original]

### Linux 

+ ####  : /, /, /
    + **echo : **
    + **touch : **
    + **cp : **
    + **mv : **
    + **mkdir (-p) : (-p ) **
    + **rm : **
        + -r : /
        + -f : ,
        + rm -rf * :  ******
        + rm -rf / :  ******
    
+ ####  : 
    + **tar : , ,**
        + `tar -cvf .tar file1 file2 file...` :  .tar 
        + `tar -tvf .tar` :  .tar 
        + `tar -xvf .tar` :  .tar 
    + **gzip :  .gz , **, tar ,tar ()
        + `gzip .tar` : **** tar 
        + `tar -zcvf .tar.gz file1 file2 ...` : ****
        + `gzip -d .tar.gz  gunzip .tar.gz` : ** tar **
        + `tar -zxvf .tar.gz` : **tar**
    + **bzip2 :  .bz **
        + `bzip2 -k .tar` : ****, .tar.bz2
        + `bzip2 -d .tar.bz2  bunzip2 .tar.bz2` :****
    + **zip :  .zip ,**,windows
        + `zip -r [] []` : ****, -r 
        + `unzip ` : ****
    + **xz :  .xz , tar **
        + `xz -z .tar` : ****
        + `tar -Jcf .tar.xz file1 file2 ...` : ****
        + `xz -d .tar.xz` : ****
        + `tar -Jxf .tar.xz` : ****
    
+ #### 
    + `ls -a`  `ll -a` 
        
        ```
        drwx------. 15 angleliuliu angleliuliu 4096 9   4 09:12 .
        drwxr-xr-x.  3 root        root          25 9   3 15:28 ..
        -rw-------.  1 angleliuliu angleliuliu  358 9   3 20:04 .bash_history
        -rw-r--r--.  1 angleliuliu angleliuliu   18 10 31 2018 .bash_logout
        --. 15 angleliuliu angleliuliu 4096 9   3 17:31 .cache
        drwxr-xr-x. 14 angleliuliu angleliuliu  261 9   3 17:26 .config
        drwx------.  3 angleliuliu angleliuliu   25 9   3 15:32 .dbus
        -rw-------.  1 angleliuliu angleliuliu   16 9   3 15:32 .esd_auth
        drwx------.  3 angleliuliu angleliuliu   19 9   3 15:32 .local
      drwxr-xr-x.  4 angleliuliu angleliuliu   39 9   3 15:15 .mozilla
      ```
        + d / - / l : 
            + \- : 
            + d : 
            + l : 
        + **rw- / rwx** : 
            + r : 
            + w : 
            + x : 
        + **r-- / r-x** : 
        + **r-- / r-x** : 
        + 15 / 3 / 1 : ;  1, 
        + angleliuliu / root : 
        + 4096 / 25 : ;  ""
        + 9  / 10  : 
      + .config / .local : 
        
    + ****, ()
      
         | r  | w  | x  | 
        :---: | :---: | :---: | :---: | :---: 
         | 1      | 0     | 0     | 4
         | 0      | 1     | 0     | 2
         | 0     | 0     | 1     | 1
         | 1    | 1     | 0     | 6
         | 1    | 1     | 1     | 7     
        
        ```
      chmod 744 test.txt
      # 
      # 7 = 4 + 2 + 1 == r + w + x  :  user 
      # 4 == r  :  group 
      # 4 == r  :  other 
      ```
    
+ ####  (Linux/Unix  root ,) 
  
    1. **useradd** : root 
        +  : `Usage:useradd -D [options]`
    
    2. **userdel** : root 
        +  : `Usage:userdel [options] LOGIN`
            + -r, --remove :  home   
        
    3. **passwd** : 
        +  : `Usage:passwd [OPTION...]`
            + -d, --delete : root 
            + -l, --lock : root  
            + -u, --unlock : root  
            + -e, --expire : root  
    
+ ####  (, windows )

    1. **free** : 
        
        + free : 
        + free -h : , 
        
    2. **df** : 
        
        + df : 
    + df -h : , 
        
    3. **top : **
       
    4. **ps** : ,
        
        + a : 
        + x : 
        + **u uid / username** :  id 
            
          ```
          ps u 18600
          """
          USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
          angleli+  18600  0.0  0.1 317964  3520 ?        Sl   09:13   0:00 /usr/libexec/gvfsd-me
          """
          ```
        + f : ,
        + e : 
        + ps aux | sort -rnk 4 : 
        + ps aux | sort -nk 3 :  CPU 
        + ps -aux | grep python :  python 
            + USER : 
            + PID :  ID (Process ID)
            + %CPU :  CPU 
            + %MEM :   
            + VSZ :  (Virtual Size)
            + RSS : , Kbytes 
            + TTY :  (tty)
            + STAT :  ( STAT )
            + TIME :  CPU 
            + COMMAND : 
        
    5. **kill** : 
        
        + kill id : 
        + kill -9 id : 
    
+ #### 
    + Ubuntu  apt-get
    
    1. **rpm** : RPM .( GPL )
        + rpm -ivh xxx.rpm :  rpm 
        
        + rpm -e xxx :  rpm 
        
        + rpm -qa : 
        
    3. **yum**  :  Fedora  RedHat  SUSE  rpm , RPM 
         RPM , ,,
        1. 
            + `yum install` : 
            + `yum install package1` :  package1
            + `yum groupinstall group1` :  group1
            
        2. 
            + `yum update` : 
            + `yum update package1` :  package1
            + `yum check-update` : 
            + yum upgrade package1 :  package1
            + yum groupupdate group1 :  group1
            
        3. 
            + `yum info package1` :  package1
            + `yum list` : 
            + `yum list package1` :  package1 
            + yum groupinfo group1 :  group1  yum search string  string 
            + yum search  : 
            
        4. 
            + `yum remove ` : 
            + yum groupremove group1 :  group1
            + yum deplist package1 :  package1 
            
        5. 
            + `yum clean packages` : 
            + yum clean headers :  headers
            + yum clean oldheaders :  headers
            
### vim 

+ #### 
    1. **more **
        + more file : 
        + more +n file :  n  file 
        + more +/string file :  string 
        + 
            +  : 
            +  : 
            + b :  back
            + q :  quit
            + = : 
            + :f : 
    2. **cat **
        + cat file : 
        + cat -n file : 
        + cat file1 file2 > file : 
        + tac filename : 
    3. **head , 10 **
        + head -n 100 file :  file  100 
        + head -n -100 file :  file  100 
    4. **tail , 10 **
        + tail -100 file :  100 
        + tail -n +100 file :  100  file 
        + tail -100f file :  100 ,
    5. **less  more **
        + less file :  file
        + less -N file :  file
        + less -m file :  file
        + 
            + f : 
            + b : 
            + j |  : 
            + k : 
            + G : 
            + g : 
            + /string :  string, n,N
            + ?string :  string, n,N
            + q : 
    6. **sort ,**
        + sort  : 
        + sort -r  : 
        + sort -u  : 
        + sort -n  : 
    7. **sed **
        + sed -n "/string/p"  : 
        + sed -n "1,5p"  :  1~5 
        + sed -n "3,5{=;p}"  :  3~5 , 
        + sed -n "10p"  :  10 

+ #### Vim  :  vi ,  vim  `yum install -y vim`
    + vim 
    
    + 
        1. **Command mode (\\)** :  :  / 
        2. **Insert mode (\)**  :  a ESC  
        3. **Last Line mode (\\)** :  ESC  Enter 
    
    + 
        1. 
           
             | 
            :---: | :---:
            **x** | , delete ()
            **X** | , backspace
            **dd** |  ()
            ndd | n , n 
            yy |  ()
            nyy | n , n 
            p | 
            P | 
            u | 
            
        2. 
           
             | 
            :---: | :---:
            **a** | 
            A | 
            **i** | 
            I | 
            **o** | 
            O | 
            
        3.  ()
           
             | 
            :---: | :---:
            **:w** | 
            :w! | 
            **:q** | 
            :q! | 
            **:wq** | 
            :wq! | 

###  

+ #### ,
+ ####  cpu ,
+ #### 1:N  : 
+ ####  yield,  **gevent**

    ````
    import time
    # 

    def func1(num):
        while True:
            print(f"{num}")
            time.sleep(1)
            yield

    def func2(num):
        while True:
            print(f"{num}")
            time.sleep(1)
            yield

    if __name__ == '__main__':
        num = 0
        while True:
            next(func1(num))
            next(func2(num))
            num += 1
    
    # gevent 
    import time
    import gevent

    def task(n):
        for i in range(n):
            print(gevent.getcurrent().name, i)
            gevent.sleep(1)
    
    if __name__ == '__main__':
        # 
        g1 = gevent.spawn(task, 5)
        g2 = gevent.spawn(task, 10)
        # 
        # g1.join()
        # g2.join()
        gevent.joinall([g1, g2])
  ````
  
### Centos 7  ( ip )

+ #### (IP)IP

+ ####  /etc/sysconfig/network-scripts/ifcfg-

+ ####  bak

    ```
    TYPE="Ethernet"
    PROXY_METHOD="none"
    BROWSER_ONLY="no"
    DEFROUTE="yes"
    IPV4_FAILURE_FATAL="no"
    IPV6INIT="yes"
    IPV6_AUTOCONF="yes" 
    IPV6_DEFROUTE="yes" 
    IPV6_FAILURE_FATAL="no"
    IPV6_ADDR_GEN_MODE="stable-privacy"
    NAME="ens33" 
    UUID="434fc2b9-dd08-456f-8a5c-4a266201371a"
    DEVICE="ens33"
    
    #  IP  dhcp  IP
    # BOOTPROTO=dhcp
    #  IP 
    BOOTPROTO="static"
    # IP 
    IPADDR=192.168.0.100
    #  
    NETMASK=255.255.255.0
    #  DNS
    DNS1=114.114.114.114
    DNS2=8.8.8.8
    # 
    GATEWAY=192.168.0.2                   
  ```

+ #### 

    +  : `systemctl restart network.service`

+ ####  ()

    + `systemctl start ` : 

    + `systemctl restart ` : 

    + `systemctl stop ` : 

    + `systemctl status ` : 

        ````
      systemctl status network  # 
      systemctl stop network    # 
      ````
      
### 

1. ####  atd (, )

    1.  atd ()

        ```
       systemctl status atd
       ```
       
    2. 

        +  `at `
            + :
                + min : 
                + day : 
                + 12:30 2020-09-10 
            + at now+1min : 
        + ctrl + d : 
        + ctrl + c : 
        + at -l : 
        + atrm  id : 
    
2. #### **** (crontab )

    1. ,
    2. : `systemctl status crond`

    3. ,  vim 
        + 
    
            ````
          crontab -u root -e
            # -u : 
        # -e : 
            # -l : 
            # -r :  ()
          ````
          
        + 
    
            ```
          *     *    *     *     *      
                               
      0-59  0-23      0-12   0-7   0  7 
          ```
          
            + \* : 
            + \- :  
            + \/ :  
            + \, : 
       
    4. 
        + , ---- 
            +  : /var/spool/mail 
   5. 
    
        ````
       crontab -u root -e
       #  8:00  1.py 
   0 8 * * * python 1.py
       #  10:05  1.py 
       5 10 1 5 * python 1.py
       #  1 5   1.py 
       0 1,5 * * * python 1.py
       # 3,4,5  1.py 
       60/5 3-5 * * * python 1.py
       #  10  1.py 
       0 10 * * 1 python 1.py
       ````
       
### ssh  : 

+ ##### ssh 
    + SSH****
    + SSH..
    + sshsshd,,.

+ #### ssh   (ssh sshd slogin sftp FTP)

    1.  sshd 
        ```
        systemctl status sshd
        setenforce 0
       ```

    2. windows   (Mac  ssh @IP  ) 

        1. Windows 10  powershell  ssh  `ssh @IP `
        2. Windows 10  Git Bash  `ssh @IP `
        3. Windows 10  Termius 

+ #### ssh  (Termius , )
    1.   (  : `C:\Users\\.ssh\id_rsa`  : `C:\Users\\.ssh\id_rsa.pub`)
        ```
       ssh-keygen -t rsa
       ```
    
    2.   
        ```
       ssh-copy-id @IP 
        
       ssh -i  @IP 
       ```

+ #### scp  
  
    1. 
        ```
       scp  @IP :/
       ```
    
    2. 
        ```
       scp @IP : 
       ```
       
    3. `scp -r` 
    
### 

+ ****:
    
  ```
  ln  
  ```
    + ****
    + ****
  + ****
    
+ **: -s** 
    
  ```
  ln -s  
  ```
    + ****
    + ****
    + ,, [] 
           

Web Proxy Viewer  |  New URL  |  Original Page