Linux常见命令及常见知识点

Linux常见命令及常见知识点(学习)

  • 绝对路径表示, 如:/etc/http.d

  • 当前目录: ./

  • 上层目录: ../

  • 主目录:~/

  • 切换目录:cd

  • 查看当前路径: pwd

  • 查看当前进程:ps

  • 显示所有进程: ps -ef (system v 输出) / ps -aux bsd 格式输出

  • 查看指定进程信息:ps -ef | grep pid

  • 执行退出:exit

  • 清屏:clear

  • 退出当前命令: ctrl + c (彻底退出)

  • 执行睡眠:ctrl + z (挂起当前进程 恢复后台)

  • 查看当前用户id:"id" (显示当前登陆帐户的uid、gid及所属分组及用户名)

  • 查看帮助:man + 命令(如 man who)

  • ls功能:列出指定目录中的目录、文件

  • 软连接:ln -s slink source

  • 硬连接:ln link source

  • 创建目录:mkdir

  • 创建文件:touch、vim

  • 复制文件:cp

  • 连同文件夹一块复制:cp -r

  • 移动文件:mv

  • 删除:rm

  • 删除目录及目录下文件:rm -r

  • 删除空文件夹:rmdir

  • 文件修改权限:chmod
    • chmod u+x file 给file的属主增加执行权限
    • chmod 751 file 给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其它用户分配执行(1)的权限
    • chnod u=rwx, g=rx, o=x file 上例的另一种形式
    • chmod =r file 所有用户分配读权限
    • chmod 444 file 同上例
    • chmod a-wx, a+r file 同上例
    • chmod -R u+r directory 递归的给directory目录下所有文件和子目录的属主分配读的权限
  • 查看文件内容的命令:
    • vi filename #编辑方式查看,可修改
    • cat filename #显示全部文件内容
    • more filename #分布显示文件内容
    • less filename #与more类似,且可以向前翻页
    • tail filename #仅查看尾部,还可以指定行数
    • head filename #仅查看头部,还可以指定行数
  • 向空屏输出带空格的字条串:echo hello world!

  • 终端文件:/dev/tty

  • 黑洞文件:/dev/null

  • Linux几种通配符
    • ? 可代替单个字符
    • * 可代替任意多个字符
    • [abc] 可代替 abc 集中的任何单个字符
  • 文件内容统计:wc -c(统计字节数)-l(统计行数)-w(统计字数)

  • grep命令:强大的文本搜索工具,可以使用正则表达式,并把匹配的打印出来

  • Linux中进程几种状态
    • 不可中断状态:进程处于睡眠状态,但此刻进程是不可中断的;不可中断是指进程不响应异步信号
    • 暂停状态/跟踪状态:向进程发送一个SIGSTOP信号,它就会响应该信号而进入TASK_STOPPED状态;当进程正在被跟踪时,它处于TASK_TRACED这个特殊状态;正在被跟踪指的是进程暂停下来,等待跟踪它的进程对它进行操作
    • 就绪状态:在run_queue队列里的状态
    • 运行状态:在run_queue队列里的状态
    • 可中断睡眠状态:处于这个状态的进程因为等待某某事件的发生(比如socket连接、等待信号量)而被挂起
    • zombie状态(僵尸):父亲没有通过wait系列的系统调用会顺便将子进程的尸体(tast_struct)也释放掉
    • 退出状态
  • ps打印出来的进程信息符号表示
    • D 不可中断状态(uninterruptible)(usually IO)
    • R 正在运行,或在队列中的进程
    • S 处于休眠状态
    • T 停止或被追踪
    • Z 僵尸状态
    • W 进入内核(从内核2.6开始无效)
    • X 死掉的进程
  • 命令在后台运行:一般使用 & 在命令结尾让程序自动运行(命令后可以不追加空格)

  • 查看后台任务:job -l

  • 后台任务调到前台:fg

  • 停下来的后台任务在后台执行起来:bg

  • 终止进程:kill [-s <信息名称或编号>][程序] 或 kill [-l <信息编号>] 或 kill -9 pid

  • 查看系统支持的所有信号:kill -l

  • 搜索文件
    • find
    • whereis 加参数与文件名
    • locate 只加文件名
    • find 直接搜索磁盘,较慢
    • find / -name "sring*"
  • 查看自己所在终端信息:who am i

  • 查看当前谁在使用该主机:who

  • 查看用过的命令列表:history

  • 查看磁盘使用空间:df -hl

  • 查看网络是否连通:netstat

  • 查看ip及接口信息:ifconfig

  • 查看所有环境变量:env (查看某个:env $HOME)

  • 指定命令提示符
    • \u:显示当前用户账号
    • \h:显示当前主机名
    • \W:只显示当前路径最后一个目录
    • \w:显示当前绝对路径(当前用户目录会以~代替)
    • $PWD:显示当前全路径
    • $:显示命令行'$'或'#'
    • \#:下达的第几个命令
    • \d:代表日期,格式为:week day month date
    • \t:显示时间为24小时格式 HH:MM:SS
    • \T:显示时间为12小时格式
    • \A:显示时间为24小时格式 HH:MM
    • \v:bash的版本信息
  • 查找命令可执行文件:
    • whereis [-bfmsu][-B ...][-M ...][-S ...][文件...]
    • whereis 指定命令在特定目录中查找符合条件的文件,这些文件的属性属于原始代码、二进制文件或帮助文件
    • -b 只查找二进制文件
    • -B 只在设置的目录下查找二进制文件
    • -f 不显示文件名的路径名称
    • -m 只查找说明文件
    • -M 只在设置的目录下查找说明文件
    • -s 只查找原始代码文件
    • -S 只在设置的目录下查找原始代码文件
    • -u 查找不包含指定类型的文件
    • which 指令会在PATH变量指定路径中,搜索某个系统命令的位置,并返回第一个搜索结果
    • -n 指定文件名长度,指定的长度必须大于或等于所有文件名中最长的文件名
    • -p 与-n参数相同,但此处的包括了文件的路径
    • -w 指定输出时栏位的宽度
    • -V 显示版本信息
  • 查可执行文件: which

  • 查二进制文件、说明文档、源文件等:whereis

  • 取别名命令:alias la='ls -a'

  • du、df定义及区别
    • du 显示目录或文件的大小
    • df 显示每个 所在的文件系统的信息,默认是显示所有文件系统(文件系统分配其中的一些磁盘块用来记录它自身的一些数据,如i节点,磁盘的分布图,冲撞块,超级块等,通常对用户是不可见的,称为Meta Data);du命令是用户级的程序,它不考虑Meta Data,df命令则查看文件系统的磁盘分配图并考虑Meta Data。
    • df命令获得真正的文件系统数据,du命令只能查看文件系统的部分信息
  • 查看Linux所有命令列表:compgen -c

  • 打印当前目录栈:dirs

  • 不重启机器情况下移除正在运行的进程:disown -r

  • bash shell 中hash的作用:管理着一个内置的哈希表,记录了已执行过的命令的完整路径,用该命令可以打印出你所使用过的命令以及执行的次数

  • 查看自己文件系统的磁盘空间配额:repquota (只能在root用户下)

你可能感兴趣的:(Linux常见命令及常见知识点)