Linux常用命令整理

linux中必须掌握的基本命令

在开始前,我推荐安装 trdr(too long dont read)工具,用来简化man命令,来实现查看命令含义和用法的作用。

一 、系统工作命令

  1. echo

    echo命令一般用于shell中打印变量或者字符串的作用,主要用来显示和提醒。

    • 输出一段信息 如:echo "hello world" 其中"不是必须的
    • 输出一段带环境变量的信息 如:echo "My Path is $PATH"
    • 输出并不带换行符号 如:echo -n "Hello World"
    • 输出一段激活转依字符 如: echo -e "Column 1 \t Column 2"
  2. date

    date 命令主要用来设置和打印系统时间。

    • 输出默认时区格式的事件 date +"%c"
    • 输出当前事件按照UTC和iso格式输出 date -u +"%Y-%m-%dT%H:%M:%SZ"
    • 输出事件戳 date +"%s"
  3. reboot 命令主要用来重启系统

    • 重启系统 reboot
    • 强制重启 reboot -f
  4. poweroff 命令用户关机

  5. wget 命令 用于从web中下载文件,支持 http,https,ftp

    • 获取URL中的内容到foowget https://example.com/foo
    • 获取URL中的内容到bar中 wget -O bar https://example.com/foo
    • 继续未完成的下载 wget -c https://example.com
    • 后台下载 wget -q https://example.com
  6. ps命令主要用于查看正在运行的进程的信息

    • 打印全部正在执行的进程 ps aux
    • 打印全部正在执行的进程并且伴有完整的命令串 ps auxww
    • 通过 grep 管道过滤 ps aux | grep "tomcat"
    • 得到进程的父进程pid :ps -o ppid= -p pid
  7. top命令 主要用户动态的实时的显示正在运行的程序

    • top -i 不显示空闲或者是僵尸进程
    • top -u $user 显示指定用户的进程
    • top -p PID 只显示指定进程PID
    • top -p $(pgrep -d ',' process_name) 通过进程名来查询
  8. pidof 命令主要用于查找指定进程的id号

    • pidof -s 进返回一个进程号
    • pidof -c 仅显示具有相同root目录下的进程

二、系统状态

  1. ifconfig 命令主要用于网络接口的查看和配置
  • Ifconfig eth0 查看etho0接口网络设置
  • ifconfig -a 查看所有接口的详细信息
  • ifconfig eth0 down 关闭接口eth0
  • ifconfig eth0 ipaddr 设置端口ip地址
  1. uname 打印出现当前机器和系统的相关信息
  • uname -n 打印当前的hostname
  • uname -a 打印当前可用的系统的信息,包括硬件软件。
  1. who 打印哪些用户登录再这台机器上
  • who 显示username等比较全的信息
  • who am i 打印出当前用户
  1. last 用于查看当前用户最近的登录信息

三、文件和目录

  1. pwd 用于打印当前目录

  2. cd 用于切换目录

  3. ls 用于罗列目录下的文件或者文件夹

  • ls -l按行罗列文件或文件夹
  • ls -a 显示所有文件,包括隐藏的文件。
  • ls -lh 按照大小排泄排列
  1. touch 命令主要用于改变文件的访问时间和修改时间。
  • touch filename 以当前时间创建文件
  • touch -t yyyy-mm-dd filename 以某一时间来改变文件时间
  1. mkdir 命令主要用于创建文件
  • mkdir dir 创建文件夹
  • mkdir -p /path/dir 创建指定路径下的文件
  1. cp 命令主要用于文件的复制
  • cp path/to/file.ext path/to/copy.ext 复制文件到另一个地址
  • cp path/to/file.ext path/to/target_parent_directory 复制文件到指定地址,并且保持文件名不变
  • cp -r path/to/directory path/to/copy 递归的复制整个文件夹及其中的内容到指定目录
  • cp -i *.txt path/to/target_directory 以交互的模式复制文件到指定文件夹中
  1. mv 命令主要用于移动文件
  • mv source target 移动文件
  • mv -f 强制移动,覆盖现有文件时不要提示
  1. rm命令主要用于删除文件
  • rm path/to/file path/to/another/file 删除特定文件夹中的文件
  • rm -r path/to/directory 递归删除文件夹及文件夹中的文件
  • rm -rf 递归删除,并且不要提示信息
  1. dd 命令主要用于转化和复制文件,制作usb镜像
  • Clone a drive to another drive with 4MB block and ignore error dd if=/dev/source_drive of=/dev/dest_drive bs=4m conv=noerror
  1. file命令主要用于确定文件类型
  • file filename 输出文件类型
  • file -s filename 用于特殊的文件或者设备文件。

四、文本编辑命令

  1. cat 打印和串联文件
  • cat file 打印文件内容到标准输出
  • cat file1 file2 > targetFile 将多个文件内容串联到目标文件中
  • cat -n file 打印出行数到标准输出
  1. more 用于互动的阅读文件内容,可以上下滚动
  • more file 打开文件,<space>用于移动到下一页,/用于搜索文件内容, q用于退出当前界面
  1. head 输出文件开始的部分
  • head -n count_of_line filename 查看文件的前n行
  • head -c number_of_byte filename 查看文件的前n个字节
  1. tail 输出文件最后的部分
  • tail -n num file打印出文件最后num行
  • tail -n +num file 打印出文件从num开始的几行
  • tail -f file 保持阅读状态直到 Ctrl + c
  1. wc命令用于统计文件的单词,字节,行数
  • wc -l filename 统计文件的行数
  • wc -w filename 统计文件的字数
  • wc -c filename 统计文件的字节数
  1. 显示文件的状态
  • stat filename 显示文件的属性比如大小,权限等。
  • stat -x filename格式化显示文件的详细属性信息。
-------------本文结束感谢您的阅读-------------