常用shell笔记

一. vi 编辑文件

1. 删除字符:在只读模式下,X:大字的X,每按一次删除光标所在位置的前面一个字符;x:小写字母x  每按一次删除光标所在位置的后面一个字符

2. 进入编辑模式:i、a、o切换进入Insert mode (编辑模式)

3. 跳转到对应的行:

    在Command mode (只读模式)下

    shift+g 跳转到文件结尾

    g + g   跳转到文件开头

    :100   跳转到100行处

    :/要查找的词   回车就会进入查找,按“n”查找下一个,按“N”查找上一个

4. 退出vi编辑:

       按ESC进入到Command mode (只读模式)下

       :q + 回车  没有修改文件的情况下退出

       :q! + 回车  强制退出并放弃编辑的文件

       :x + 回车 保存文件并退出编辑

       :w   保存当前编辑文件,但并不退出, 而是继续等待用户输入命令, 在使用w命令时,可以再给编辑文件起一个新的文件名。

       :w newfile  此时Vi将把当前文件的内容保存到指定的newfile中,而原有文件保持不变。若newfile是一个已存在的文件,则Vi在显示窗口的状态行给出提示信息:  File exists (use ! to override)   此时,若用户真的希望用文件的当前内容替换newfile中原有内容,可使用命令  :w! newfile  否则可选择另外的文件名来保存当前文件

       :w filename (输入“w filename”,将文件存入指定的文件名filename)
       :wq (输入“wq”,因为进入之时已经指定文件名filename,所以会写入filename并离开vi)

二: crontab

   crontab -l    查看crontab 列表

   crontab -e   编辑crontab列表

   crontab基本格式 :
   *  *  *  *  *  command
   分   时   日  月   周   命令
   eg:
   30 21 * * *  /usr/local/etc/rc.d/lighttpd restart
   上面的例子表示每晚的21:30重启apache

   45 4 1,10,22 * *  /usr/local/etc/rc.d/lighttpd restart
   上面的例子表示每月1、10、22日的4 : 45重启apache。

   10 1 * * 6,0  /usr/local/etc/rc.d/lighttpd restart
   上面的例子表示每周六、周日的1 : 10重启apache。

   * */1 * * * /usr/local/etc/rc.d/lighttpd restart
   每一小时重启apache
   * 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
   晚上11点到早上7点之间,每隔一小时重启apache

三:重启fastcgi  

 killall -9 php-fpm

   /../sbin/php-fpm

四: nginx

  1. 重启nginx:  cd /nginx/sbin/  ./nginx -s reload

  2. 查看nginx是否重启成功 : ps -ef | grep nginx

  3. nginx修改超时时间:

     vi /nginx/conf/nginx.conf

     location /{
        ...
        proxy_connect_timeout 6000;
        proxy_send_timeout 6000;
        proxy_read_timeout 6000;
        send_timeout 6000;
        ...
     }

五: 查找文件

     find ./ name  查找文件

     find ./test.php       find ./test*

六:查询磁盘空间

   df -h
   du -h --max-depth=1

   df-h
   for i in $(ls -l |grep '^d' |du -s * |sort -nr|awk '{print $2}');do du -sh $i;done    //查看当前目录下文件大小并排序

七:权限

   mkdir /data/test/
   chmod -R 777 /data/test/   给test文件夹添加所有权限

八:解压7z压缩包 

  7za x {$up7zFile} -r -y -o{$tmp_name}  //解压7z压缩包 

九:表、数据库

   1. 查看表结构:
   show create table xxx;
   desc xxx;

   2. 查表数据:

   show databases;
   use xxx
   show tables;
   select * from userinfo G

十:文件上传下载

   rz -ey -m 1024   //文件上传

   sz xxx.js   //文件下载

十一:查询位置

whereis php-fpm

十二:tail

tail命令用于输出文件中的尾部内容。

tail -2 xxx.php  //查询xxx.php文件最后2行内容

tail -f xxx.php   //时时输出xxx.php文件内容 相当于tailf xxx.php

十三: ps -ef

显示所有进程信息,连同命令行 

十四:tcpdump网络抓包

tcpdump host test.xx.com -s 0 -w xxx.cap    //网络抓包 host:请求地址, -s 0 :不限制大小,-w 抓包输出的文件, 用wireshark软件打开.cap文件查看详细请求信息

十五:curl 请求

curl 'url' //get 请求
curl -d 'a=b&aa=bb' 'url' //post请求
curl -H 'Content-Type:application/json' 'http://www.test.com' -d '{"a":"b","aa":"bb"}' //post 请求,传参为json格式

十六:删除文件夹

rm -r xxx

原文地址:https://www.cnblogs.com/lmh2072005/p/5312571.html