• ubuntu 下常用的命令(仅做记录)


    1. vim 编辑器的常用命令

    1.1 光标移动命令

    • gg :将光标移动到文件首。(敲代码时,添加头文件时使用)
    • `: 将光标移动到上次编辑处(添加完头文件,回到编辑处)
    • n G:将光标跳转到第n行 (修改BUG时使用)
    • G: 将光标移动到文件尾
    • n j :n代表代表移动行数,光标向下移动n行。 例如: 20 j 代表光标向下移动20行。
    • 0 (数字0): 将光标移动到行首
    • $ : 将光标移动到行末尾

    1.2 复制命令

    • yy: 复制1行
    • n yy :赋值n行
    • y $ :从光标处复制到行尾

    1.3 剪切命令

    • dd : 剪切光标所在行
    • n dd: 剪切光标所在行开始的n行
    • x: 剪切1个字符
    • n x: 剪切n个字符

    注意:剪切命令实际上也可以作为删除命令使用。

    1.4 粘贴命令

    • p :将复制或者剪切的内容粘贴到光标所在位置。
    • n p :将复制或者剪切的内容粘贴n次

    1.5 撤销命令

    • u : 撤销1次
    • u n: 撤销n次
    • Ctrl + r: 撤销 u撤销的内容

    1.6 查找命令

    • /查找内容 :
      - n : 查找下一个
      - N: 查找下一个

    1.7 查看帮助手册及分屏

    • sp 文件名 : 分屏代开另外一个文件
    • v+m(光标停留在需要查询的函数处): 分屏打开需要查询函数的man 手册
    • Ctrl +w +w :在分屏间进行切换

    1.8 可视模式

    • v :切换到可视模式
      - 可视模式下按 上下左右,选择可视的块代码
      - 可视模式下按 = 调整对齐

    1.9 转换大小写

    • Shift + ~ : 转换光标处字母的大小写

    1.10 调整字体大小

    • Ctrl + - : 将字体调小
    • Ctrl + Shift + + :将字体调大

    1.11 添加注释

    • Ctrl + v 进入可视模式, 选中要添加注释的行
    • 按大写的I 进入插入模式 按两次 /
    • 按两次ESC, 此时所有选中的行加了注释

    1.12 删除注释

    • Ctrl +v 选中需要删除注释的的注释符号。
    • 按delete 键删除

    2. 文件相关

    2.1 ls 命令 显示当前目录中的文件

    常用的参数

    • ls -l:详细显示文件权限,所有者,修改时间,文件大小等信息。
      ls -l后显示的内容:第一位是文件类型(-普通文件、d目录、l链接……)接下来的9个数字3个为一组,共3组每组分别代表:文件所有者权限、与文件所有者同组的用户的组权限、其他用户的访客权限。内核看到的文件权限码是一个8进制数,例如0666。
    • ls -a:显示所有文件(包含隐藏文件,就是文件名第一个字符为『 . 』的文件)
    • ls -r:逆向显示文件
    • ls -R:递归地列举所有目录(在当前目录下)的所有内容

    2.2 cd 进入某个目录

    常用的参数:

    • cd …:返回上级目录
    • cd …/…:返回上两级目录
    • cd /:进入根目录
    • cd ~:进入用户工作目录

    2.3 rm 删除文件或目录

    • rm 文件名:删除该文件
    • rm -f 文件名:删除该文件并不询问
    • rm -r 目录名:删除一个目录
    • rm -v 文件名:删除文件时会显示信息

    注意:
    常用rm -rf来删除某个目录和该目录下的所有子文件。

    2.4 mv 移动文件或重命名文件

    • mv 源文件 目标文件:将源文件命名为目标文件
    • mv 源文件 目标目录:将源文件移动至目标目录(源文件可多个)
    • mv 源目录 目标目录:如果目标目录存在,则将源目录移动至目标目录;如果目标目录不存在,则重命名该目录为目标目录
    • mv -i 源文件 目标文件:将源文件命名为目标文件,如果目标文件名存在,则询问是否覆盖
    • mv -f 源文件 目标文件:将源文件命名为目标文件,如果目标文件名存在,则直接覆盖
    • mv * …:移动当前目录下所有文件到上级目录

    2.5 cp 复制文件或将文件复制到目录

    • cp 源文件 目标目录:复制源文件到目标目录中(目标目录中无该源文件)
    • cp -a 源目录 目标目录:复制整个目录到目标目录
      -p :连同文件的属性一起复制,而非使用默认方式,常用于备份
      -i :若目标文件已经存在时,在覆盖时会先询问操作的进行
      -r :递归持续复制,用于目录的复制行为
      -u :目标文件与源文件有差异时才会复制

    注意:
    将自己的文件拷贝给他人时,需要更改文件所属用户组、文件所有者。

    2.6 pwd:显示当前目录

    2.7 mkdir:建立一个新的目录

    2.8 rmdir:删除一个空的目录

    • rmdir 目录名:删除一个空目录。

    注意:

    • 该目录必须是空的
    • 使用rm -rf可以代替rmdir,不过使用时容易误删该目录下的文件。

    2.9 who 显示当前用户

    2.10 cat 命令查看文件

    • cat file1: 在屏幕上显示文件ml的内容
    • cat file1 file2: 同时显示文件ml和m2的内容
    • cat -n file1: 为显示行添加行号

    注意:
    cat命令英文原意:concatenate and display files
    功能描述:连接文件并打印到标准输出设备上

    2.11 less more

    • more [文件名]
      (空格) 或f:显示下一页
      (Enter):显示下一行
      q或Q:退出

    示例:

    $ more /etc/services
    

    注意:
    less命令的用法与more命令类似,也可以用来浏览超过一页的文件。所不同的是less命令除了可以按空格键向下显示文件外,还可以利用上下键来卷动文件。

    2.12 head tail

    • head [参数] <文件名>
      -n:显示前n行,不指定此参数显示前10行
    [root@linux root]# head /etc/passwd
    
    • tail [参数] <文件名>
      -n:显示后n行,不指定此参数显示后10行
      +n:从第n行显示到文件尾
      -F:用于跟踪显示不断增长的文件结尾内容(通常用于显示日志文件)。

    2.17 find命令

    • find 路径 [参数]
      -name filename :找出文件名为filename的文件
      -size [±]SIZE :找出比SIZE还要大(+)或小(-)的文件
      -tpye TYPE :查找文件的类型为TYPE的文件,TYPE的值主要有:一般文件(f)、设备文件(b、c)、目录(d)、连接文件(l)、socket(s)、FIFO管道文件§;
      -perm mode :查找文件权限刚好等于mode的文件,mode用
      数字表示,如0755

    2.13 grep命令

    (Globally search a Regular Expression and Print)
    功能:在文件中搜索匹配的字符并进行输出

    • grep[参数] <要找的字串> <要寻找字串的源文件>
      -a :将binary文件以text文件的方式查找数据
      -c :计算找到“查找字符串”的次数
      -i :忽略大小写的区别,即把大小写视为相同
      -v :反向选择,即显示出不包含‘查找字符串’内容的那一行

    2.14 打包命令

    tar(tape archive)命令能够将用户所指定的文件或目录打包成一个文件,
    也可以通过指定参数开启压缩/解压缩功能

    • 格式:tar [参数] <文件>
      -c :新建打包文件
      -t :查看打包文件的内容含有哪些文件名
      -x :解打包或解压缩的功能,可以搭配-C(大写)指定解压的目录,注意-c,-t,-x不能同时出现在同一条命令中
      -j :通过bzip2的支持进行压缩/解压缩
      -z :通过gzip的支持进行压缩/解压缩
      -v :在压缩/解压缩过程中,将正在处理的文件名显示出来
      -f filename :filename为要处理的文件
      -C dir :指定压缩/解压缩的目录dir

    2.15 ln 命令

    功能:用于创建链接

    • ln file1 file2 : 为file1 文件创建一个硬链接
    • ln -s file1 file2: 为file1 文件创建一个软连接

    3.网络相关

    • ifconfig :查看ip、子网掩码等

    4. 进程控制类命令

    4.1 ps命令

    功能:ps命令是用来显示系统瞬间的进程信息,它可以显示出在用户输入ps命令时系统的进程及进程的相关信息。

    • ps [参数]
      l: 长格式输出
      u: 按用户名和启动时间的顺序来显示进程
      j: 用任务格式来显示进程
      f: 用树形格式来显示进程
      a: 显示所有用户的所有进程(包括其它用户)
      x: 显示无控制终端的进程
      r: 显示运行中的进程

    4.2 top命令

    功能:动态监视系统任务的工具,输出结果是连续的

    • top [参数]
      -b 以批量模式运行,但不能接受命令行输入
      -c 显示命令行,而不仅仅是命令名
      -d N 显示两次刷新时间的间隔,比如 -d 5,表示两次刷新间隔为5秒
      -i 禁止显示空闲进程或僵尸进程
      -n NUM 显示更新次数,然后退出。比如 -n 5,表示top更新5次数据就退出
      -p PID 仅监视指定进程的ID;PID是一个数值
      -q 不经任何延时就刷新
      -s 安全模式运行,禁用一些效互指令
      -S 累积模式,输出每个进程的总的CPU时间

    4.3 kill 命令

    功能:该命令用于向某个进程(通过PID标识)传送一个信号,它通常与ps和jobs命令

    • kill –signal PID,

    常用的signal参数如下:

    • 1:SIGHUP,启动被终止的进程
    • 2:SIGINT,相当于输入ctrl+c,中断一个程序的进行
    • 9:SIGKILL,强制中断一个进程的进行
    • 15:SIGTERM,以正常的结束进程方式来终止进程
    • 17:SIGSTOP,相当于输入ctrl+z,暂停一个进程的进行

    4.4 killall 命令

    功能:

    • killall命令使用进程的名称来杀死进程,使用此指令可以杀死一组同 名进程
    • 使用kill命令可以杀死指定进程PID的进程,如果要根据进程名称找到需要杀死的进程,还需要在之前使用ps等命令再配合grep来查找进程,而killall把这两个过程合二为一

    格式与参数:

    • killall [参数] <正在运行的进程名>
      -e:对长名称进行精确匹配;
      -I:忽略大小写的不同;
      -p:杀死进程所属的进程组;
      -i:交互式杀死进程,杀死进程前需要进行确认;
      -l:打印所有已知信号列表;
      -q:如果没有进程被杀死。则不输出任何信息;
      -r:使用正规表达式匹配要杀死的进程名称; -
      s:用指定的进程号代替默认信号“SIGTERM”; -u:杀死指定用户的进程。

    4.5 nice 命令

    功能:nice 命令允许在默认优先级的基础上进行增大或减小的方式来运行命令

    • nice [参数] <command [arguments…]>
      command 是系统中任意可执行文件的名称
      -n, --adjustment 指定程序运行优先级的调整值
      注意:
      优先级的调整值范围为-20 ~ 19 ,其中数值越小优先级越高,数值越大优先级越低
      若 nice命令未指定优先级的调整值,则以缺省值10来调整程序运行优先级,既在命
      令通常运行优先级基础之上增加10

    4.6 renice 命令

    功能:改变一个正在运行的进程的nice值

    • renice [参数]
      -n:指定程序运行优先级的调整值
    [root@host root]# renice -5 777
    //将正在运行的PID为777的进程nice值改为-5
    

    4.7 其他杂项

    • 进程的中止(挂起)和终止
      挂起(Ctrl+Z)
      终止(Ctrl+C)
    • 进程的恢复
      恢复到前台继续运行(fg)fg [n]
      恢复到后台继续运行(bg)bg [n]
    • 查看被挂起的进程(jobs)
    • lsof -i : 查看端口、运行的进程等信息

    5. 用户及权限管理类命令

    5.1 useradd

    功能:新建用户帐号(超级用户可用)

    • useradd [参数] <用户名>
      -d 指定用户登入时的主目录
      -e 账号终止日期
      -g 指定账户所属的用户组
      -G 指定账户所属的附加组
      -s 指定账户登录后所使用的shell
      -u 指定用户ID号
    举例:新建一个用户zhangsan,用户组为net04
    useradd –g net04 zhangsan
    

    5.2 passwd

    功能:设置或修改用户的口令以及口令的属性

    • passwd [参数] <用户>
      -d 删除用户的口令
      -l 暂时锁定指定的用户帐号
      -u 解除指定用户帐号的锁定
      -s 显示指定用户帐号的状态
    //设置与修改属性
    passwd zhangsan
    //删除口令
    passwd –d zhangsan
    //锁定/解锁用户帐号
    passwd –l zhangsan
    passwd –u zhangsan
    //显示用户帐号状态
    passwd –s zhangsan
    

    5.3 usermod

    功能:修改用户的属性(超级用户可用)

    • usermod [参数] <用户名>
      d 指定用户登入时的主目录
      -e 账号终止日期
      -g 指定账户所属的用户组
      -G 指定账户所属的附加组
      -s 指定账户登录后所使用的shell
      -u 指定用户ID号
      -l 新用户名(用于修改用户名)
    //将zhangsan改为zhangs
    usermod –l zhangs zhangsan
    

    5.4 userdel

    功能:删除指定的用户帐号(超级用户可用)

    • userdel [参数] <用户名>
      -r:不仅删除此用户帐号,而且删除用户主目录及本地邮件存储的目录
      或文件
      -f:删除用户登入目录以及目录中所有文件
      注意:
      如果删除用户属于私人组群,而该组群没有其他用户,组群也一并删除。
      正在使用系统的用户不能删除。

    5.5 su

    功能:切换用户身份

    • 格式:su <用户名>
      超级用户可以切换为任何普通用户,而不需要输入口令;
      普通用户转换为其他用户时需要输入被转换用户的口令;
      使用exit可以返回到本来的用户身份

    5.6 id

    功能:查看用户的UID、GID和用户所属用户组的信息,如果不指定用户,则显示当前用户的相关信息。

    • id <用户名>

    5.7 whoami

    功能:查看当前用户名

    5.8 w

    功能:查看当前登录系统用户和详细信息

    5.9 groupadd

    功能:新建组群(超级用户可用)

    • groupadd [参数] <用户组名>
      -g:指定用户组ID
      -o:允许组ID号不唯一

    5.10 groupmod

    功能:修改指定用户组的属性(超级用户可用)

    • groupmod [参数] <用户组名>
      -g:指定新的用户组ID
      -n:指定新的用户组名字
      -o: 允许组ID号不唯一

    5.11 groupdel

    功能:删除指定的用户组(超级用户可用)

    • groupdel <用户组名>

    注意:在删除指定用户组之前必须保证该用户组不是任何用户的主要组群,否则要先删除以此用户组为主要组群的用户才可以删除该用户组

    5.12 chmod 改变文件权限

    • chmod -R xyz 文件或目录:进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都会变更。
    • chmod xyz 文件或目录:更改xyz文件或目录的权限。

    注意:rwx 读写执行 分别是4 2 1 。

    5.13 chown 更改文件所有者

    • chown 账号名称 文件或目录:更改文件或目录的所有者。
    • chown 账号名称:组名 文件或目录 更改文件或目录的所有者 和所属组。
    • chown -R 账号名称:组名 目录 递归改变目录中文件的所属者。
    范例:将 initial-setup-ks.cfg 的拥有者改为 bin 这个账号:
    [root@study ~]# chown bin initial-setup-ks.cfg
    [root@study ~]# ls -l
    -rw-r--r--. 1 bin
    users 1864 May 4 18:01 initial-setup-ks.cfg
    
    范例:将 initial-setup-ks.cfg 的拥有者与群组改回为 root:
    [root@study ~]# chown root:root initial-setup-ks.cfg
    [root@study ~]# ls -l
    -rw-r--r--. 1 root root 1864 May 4 18:01 initial-setup-ks.cfg
    

    5.14 chgrp 更改文件的所属组

    • chgrp [-R] 目录名或文件名: 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件、目录都更新成为这个群组之意。常常用在变更某一目录内所有的文件之情况。
      范例:
    [root@study ~]# chgrp users initial-setup-ks.cfg
    [root@study ~]# ls -l
    -rw-r--r--. 1 root users 1864 May
    4 18:01 initial-setup-ks.cfg
    [root@study ~]# chgrp testing initial-setup-ks.cfg
    chgrp: invalid group:
    `testing' <== 发生错误讯息啰~找不到这个群组名~
    
    • 搜索包:apt search 包名
    //举栗子
    apt search netfilter_queue
    
    • 查看头文件和库的路径
    /usr/include, /usr/lib, /usr/lib64
    
  • 相关阅读:
    美丽的姑娘,你何时才能重现?
    成功三步曲:有勇、有谋、有德
    比目标远一点点,结果也许令你惊讶
    走别人的路,让别人无路可走!
    白领们注意啦:“过劳死”27个危险信号!
    企业发展靠创新,还是靠美女?
    学会和同事相处的30个原则
    上海雄联机械配件有限公司
    C# Keywords>Access Keywords
    Feature event receviers
  • 原文地址:https://www.cnblogs.com/lasnitch/p/12764134.html
Copyright © 2020-2023  润新知