• Linux 学习笔记


    • Deb包安装:dpkg -i 安装包名字
    • 授权: sudo chmod -R 777 wordpress_zh/
    • 配置软链接
              sudo ln -s /Users/a123/Workspaces/WebServer/wordpress /Library/WebServer/Documents/wordpress
    • linux ubuntu字符界面启动
    sudo vim /etc/default/grub
         GRUB_COMLINE_LINUX_DEFAULT="SPALI" 改 GRUB_COMLINE_LINUX_DEFAULT="text"
    sudo update-grub
    sudo reboot
     
    startx 切换X窗口启动
     
    • linux jdk:
    export JAVA_HOME=/usr/java/jdk1.6.0_27
    export JAVA_BIN=/usr/java/jdk1.6.0_27/bin
    export PATH=$PATH:$JAVA_HOME/bin
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export JAVA_HOME JAVA_BIN PATH CLASSPATH
    • ctags+vim
    vim:
    安装vim:sudo apt-get install vim;
    Esc键 --左上角那个键 (普通模式), 输入冒号 (命令行模式),wq --w(write) 写入, q(quit)退出,!(感叹号) 强制
    i 进行插入 
    (3)Vim分屏启动:
    使用大写的O参数来垂直分屏。 
    vim -On file1 file2 ...?使用小写的o参数来水平分屏。 
    vim -on file1 file2 ...注释: n是数字,表示分成几个屏。
     
    启动Vim后进行分屏
    水平分屏。 
    :split?垂直分屏。 
    :vsplit关闭分屏
    关闭当前窗口。 
    Ctrl+W c?关闭当前窗口,如果只剩最后一个了,则退出Vim。 
    Ctrl+W q分屏
    上下分割当前打开的文件。 
    Ctrl+W s?上下分割,并打开一个新的文件。 
    :sp filename?左右分割当前打开的文件。 
    Ctrl+W v?左右分割,并打开一个新的文件。 
    :vsp filename移动光标
    Vi中的光标键是h, j, k, l,要在各个屏间切换,只需要先按一下Ctrl+W
     
    把光标移到右边的屏。 
    Ctrl+W l 把光标移到左边的屏中。 
    Ctrl+W h 把光标移到上边的屏中。 
    Ctrl+W k 把光标移到下边的屏中。 
    Ctrl+W j 把光标移到下一个的屏中。. 
    Ctrl+W w移动分屏
    这个功能还是使用了Vim的光标键,只不过都是大写。当然了,如果你的分屏很乱很复杂的话,这个功能可能会出现一些非常奇怪的症状。
     
    向右移动。 
    Ctrl+W L?向左移动 
    Ctrl+W H?向上移动 
    Ctrl+W K?向下移动 
    Ctrl+W J屏幕尺寸
    下面是改变尺寸的一些操作,主要是高度,对于宽度你可以使用Ctrl+W <或是>,但这可能需要最新的版本才支持。
     
    让所有的屏都有一样的高度。 
    Ctrl+W =?增加高度。 
    Ctrl+W +?减少高度。 
    Ctrl+W -
     
    (4)常用命令
    处于普通模式下进行:
    j: 移动到下一行,k:移动到上一行,l:向右移动,h:向左移动
    dd:剪切当前行 ,10dd:剪切从当前行后面10行
    yy:复制当前行 ,10yy复制从当前行后面10行
    p: 粘贴到当前行的下一行
    o: 在当前行的下一行插入
    r: 替换当前字符
     
    fx:移动光标到当前行的下一个 x 处。很明显,x 可以是任意一个字母,而且你可以使用 ; 来重复你的上一个 f 命令。
    tx:和上面的命令类似,但是是移动到 x 的左边一个位置。(这真的很有用)
    Fx:和 fx 类似,不过是往回找。
    w:光标往前移动一个词。
    b:光标往后移动一个词。
    0:移动光标到当前行首。
    ^:移动光标到当前行的第一个字母位置。
    $:移动光标到行尾。
    ):移动光标到下一个句子。
    ( :移动光标到上一个句子。
     
    <Ctrl+F>:向下移动一屏。
    <Ctrl+B>:向上移动一屏。
    G:到文件尾
    numG:移动光标到指定的行(num)。(比如 10G 就是到第 10 行)
    gg:到文件首
    H:移动光标到屏幕上面
    M:移动光标到屏幕中间
    L:移动光标到屏幕下面
    *:读取光标处的字符串,并且移动光标到它再次出现的地方。
    #:和上面的类似,但是是往反方向寻找。
    /text:从当前光标处开始搜索字符串 text,并且到达 text 出现的地方。必须使用回车来开始这个搜索命令。如果想重复上次的搜索的话,按 n。
    ?text:和上面类似,但是是反方向。
    ma:在当前光标的位置标记一个书签,名字为 a。书签名只能是小写字母。你看不见书签的存在,但它确实已经在那里了。
    `a:到书签 a 处。注意这个不是单引号,它一般位于大部分键盘的 1 的左边。
    `.:到你上次编辑文件的地方。这个命令很有用,而且你不用自己去标记它。
     
    i:在当前字符的左边插入
    I:在当前行首插入
    a:在当前字符的右边插入
    A:在当前行尾插入
    o:在当前行下面插入一个新行
    O:在当前行上面插入一个新行
    c{motion}:删除 motion 命令跨过的字符,并且进入插入模式。比如:c$,这将会删除从光标位置到行尾的字符并且进入插入模式。ct!,
    这会删除从光标位置到下一个叹号(但不包括),然后进入插入模式。被删除的字符被存在了剪贴板里面,并且可以再粘贴出来。
    d{motion}:和上面差不多,但是不进入插入模式。
     
    ctags:
    1)首先,需要安装 ctags,在终端里输入以下命令来安装 ctags
    apt-get install ctags
    2)接下来,需要在 linux-2.6.30.4 主目录下递归地创建 tag 标记
    cd linux-2.6.30.4 切换到内核主目录下
    ctags -R
    为内核里的所有函数递归地创建标记,此过程需要几分钟
    3)做完以上两步之后,以后就可以直接使用 ctags 帮助我们搜索内核函数了
    cd linux-2.6.30.4 必须在内核主目录下才能使用 ctags
    vim 打开 vim,在 vim 里输入 ctags 命令即可实现函数查找
    命令 说明
    :ta function
    查看名为 function 的函数
    :tnext
    查看下一个
    :tfirst
    查看搜到的第一个
    :ts function
    查看名为 function 的函数,如果有多个则列表
    Ctrl+] 进入光标所在的函数或结构体定义
    Ctrl+o 返回到上一次的位置
    gf
    进入到光标所在的文件
    表 4.4.1 查看内核函数的操作
    例如,要查找 platform_device 的结构体定义,过程如下:
    1)在 linux-2.6.30.4 目录下,打开 vim ” ,按下 :”进入命令行模式,输入:ts platform_device
    2)按下回车后,可以看到搜到了两个结果,第 1 个结果是我们想要查找的,输入数字 1,然后回车
    3)接下来就可以看到 platform_device 结构体的定义了
    • linux查看当前文件夹大小:
            du -sh . 
    • Linux设置定时任务:
    1) 在命令行输入: crontab -e 然后添加相应的任务,wq存盘退出。
    2)直接编辑/etc/crontab 文件,即vi /etc/crontab,添加相应的任务
        10 13 25 9 * root rm -rf /mnt/fb           --m h dom mon dow user  command   分  小时  日  月  星期  用户  命令 
    • 查看库是否编译正确
    ldd –r lib.so  //动态库
    nm libfirst.a | more  //静态库
    • 查看端口状态  
         netstat -apn | grep 端口号
         lsof -i | grep 端口号
         二、用端口扫描器nmap来检查哪些端口正在监听网络
         判定哪些端口在监听来自网络上的 TCP 连接是:
         nmap -sT -O localhost
    • 查看文件尾部
         tail –f filename
    • linux下抓tcpdump包
         tcpdump -s0 -vvvX host 218.17.157.74 and port 9015
    • 查看core文件依赖
         file core.110
    • 浅析Linux下core文件
    ulimit -a    --查看core熟悉
    ulimit -c 1024 --设置core产生大小
    ulimit -c unlimited  --设置core文件产生不受限制
    • 查看文件系统大小
         df -h   查看分区块大小
         du -h --max-depth=1 [文件夹名称]   查看指定文件夹大小
    • 查看磁盘的使用情况
          df -h
              文件系统              容量  已用 可用 已用% 挂载点
         /dev/sda1              18G  6.9G  9.7G  42% /
                 tmpfs                 442M     0  442M   0% /dev/shm
         fdisk -l       能列出机器中所有磁盘的个数,也能列出所有磁盘分区情况
         cat /proc/partitions      查看目前机器中的所有磁盘及分区情况
    • 查看内存大小
    参数:free [-m|g]按MB,GB显示内存
    • 查看cpu
          cat /proc/cpuinfo
         只看cpu数量   grep "model name" /proc/cpuinfo | wc -l
         只核心数量      grep 'core id' /proc/cpuinfo | sort -u | wc -l
         只看线程数据   grep 'processor' /proc/cpuinfo | sort -u | wc -l
    • 查看系统内存
          cat /proc/meminfo
    • 查看每个进程的情况
         ps -ef 
    • 查看负载
          w
          uptime

    • 查看磁盘io负载:
         iostat -x 1 10
    • 查看实时内存使用情况
         top
    • 查看文件夹大小
    du -h --max-depth=0  [dir] 
    du -sh [dir]
    • 查看程序的各段大小
       size ./test
       text    data     bss     dec     hex filename
       1252     292       8    1552     610 ./test
    • linux 给文件夹的所有子文件夹授权
    chmod -R 777 /var/home/userid/cc
    • Linux下设置快捷方式:
              alias bin="cd $SCS_ROOT/bin"
    • linux联机下拷贝文件命令:
              scp username@host:path/filename .
    • 解压与压缩(bz2文件压缩率比较好)
    *.tar.bz2文件命令,解压:tar -jxvf *.tar.bz2 , 压缩:tar -jcvf *.tar.bz2 文件夹名称
    *.tar.gz文件命令, 解压:tar -xvf *.tar.gz 压缩:tar -cvf *.tar.gz 文件夹名称
    *.zip文件命令,解压:unzip 文件名称, 压缩:zip *.zip 文件夹名称
    • RPM安装包:
    rpm -qa | grep tcp
    rpm -ivh test.rpm      安装
    rpm -Uvh test.rpm      升级
    • 启用ubuntu root 用户
          sudo passwd root
    • 输入结束符
          EOF        ctrl +d
    • 常用命令查看cpu
       cat /proc/cpuinfo
    • 常用命令查看内存
       cat /proc/meminfo
    • 常用命令查看cpu是32位还是64位
       getconf LONG_BIT
    • 常用命令查看当前linux的版本
          cat /etc/redhat-release
    • 常用命令查看内核版本
       uname -a
    • 常用命令查看当前时间
         date
     
  • 相关阅读:
    linux系统中如何进入退出vim编辑器,方法及区别
    [转]JAVA的动态代理机制及Spring的实现方式
    mybaties 缓存
    全面分析 Spring 的编程式事务管理及声明式事务管理
    面试(4)-spring-Spring面试题和答案
    vector的多套遍历方案
    【QT】QT下载与安装
    【QT】无需写connect代码关联信号和槽函数
    【QT】第一个QT程序(点击按钮,显示特定文本)
    【QT】error: 'SIGNAL' was not declared in this scope
  • 原文地址:https://www.cnblogs.com/ht-927/p/4475997.html
Copyright © 2020-2023  润新知