Linux常用命令

目录

` Linux中的命令非常多,总结一些常用的命令,其它的边用边查即可`

常用命令

系统状况

  1. ` top` 相当于是Win的任务管理器,可以查看所有进程的信息

    • 输入M Memory 按内存使用排序

    • 输入P Processor 按使用CPU排序

    • 输入q Quit 退出

  2. df -h diskfree 查看磁盘使用情况

  3. free -h 查看内存的使用情况

  4. du -sh (disk use) 查看当前目录占用的内存空间

  5. ps aux(process)查看所有进程

  6. kill -9 pid 杀死编号为pid的进程 传递某个具体信号给进程

    • 1 (HUP):重新加载进程。

    • 9 (KILL):杀死一个进程。

    • 15 (TERM):正常停止一个进程。

  7. netstat -nt : 查看所有网络连接

  8. w 当前登录的用户

  9. ping url 检查是否联网

文件操作

文件权限

  1. chomd 修改权限

    • chmod +x xxx : 给xxx添加可执行权限

    • chmod -x xxx : 去掉xxx的可执行权限

    • chmod 777 xxx : 将xxx的权限改成777 1 2 4 读写执行

    • chmod 777 xxx -R : 递归(Recursive)修改整个文件夹的权限

查看文件

  1. more 浏览文件

    • 回车 : 下一行

    • 空格 : 下一页

    • b : 上一页

    • q : 退出

  2. less : 与 more 类似,功能更全 less is more 😀

    • 回车 : 下一行

    • y : 上一行

    • Page Down : 下一页

    • Page Up : 上一页

    • q : 退出

  3. head -3 xxx : 展示 xxx 的前 3 行内容

    • 同时支持从stdin读入内容
  4. tail -3 xxx : 展示 xxx 末尾 3 行内容

用户相关

  1. history 查看当前用户的历史操作命令。内容存放在** ~/.bash_history **中

一些工具命令

  1. md5sum : 计算 md5 哈希值

    • 可以从stdin读入内容

    • 也可以在命令行参数中传入文件名列表

  2. time command : 统计 command 命令的执行时间

  3. watch -n 0.1 command : 每 0.1 秒执行一次 command 命令

  4. tar : 压缩文件

    • tar -zcvf xxx.tar.gz /path/to/file/* : 压缩

    • tar -zxvf xxx.tar.gz : 解压缩

  5. diff xxx yyy : 查找文件 xxx 与 yyy 的不同点 different

  6. sudo command : 以 root 身份执行 command 命令

  7. apt-get install xxx : 安装软件(Ubuntu)

    • yum install xxx : 安装软件(CentOS)
  8. pip install xxx –user –upgrade : 安装 python 包

    • pip3 升级版的 pip

文件检索

  1. find /coder/file -name ‘*.go’ 搜索某个文件路径下的所有 *.go 文件

  2. grep xxx : 从 stdin 中读入若干行数据,如果某行中包含 xxx ,则输出该行;否则忽略该行 这个命令一般和管道 使用
  3. wc : 统计行数、单词数、字节数 既可以从 stdin 中直接读入内容;也可以在命令行参数中传入文件名列表; wc -l : 统计行数 line wc -w : 统计单词数 word wc -c : 统计字节数

  4. tree : 展示当前目录的文件结构 tree /path/to/directory/ : 展示某个目录的文件结构 tree -a : 展示隐藏文件 ls -a

  5. ag xxx : 搜索当前目录下的所有文件,检索 xxx 字符串

  6. cut : 分割一行内容

    • -d :自定义分隔符,默认为制表符。
    • -f :与-d一起使用,指定显示哪个区域。 echo $PATH | cut -d ‘:’ -f 3,5 输出 PATH 用 : 分割后第 3、5 列数据 echo $PATH | cut -d ‘:’ -f 3-5 输出 PATH 用 : 分割后第 3-5 列数据 echo $PATH | cut -c 3,5 输出 PATH 的第 3、5 个字符 echo $PATH | cut -c 3-5 输出 PATH 的第 3-5 个字符
  7. sort : 将每行内容按字典序排序,也可以将多个无序文本整合成一个有序文本
    sort file1.txt file2.txt file3.txt > final_sorted_list.txt
    
  8. xargs : 将 stdin 中的数据用空格或回车分割成命令行参数

  9. 综合使用find . -name ‘*.py’ xargs cat wc -l : 统计当前目录下所有 python 文件的总行数

一些组合命令

统计当前目录下共有多少个以 .go结尾的文件,将结果写入 ans.txt 中

chmod +r *
find . -name '*.go' | wc -l > ans.txt

统计当前目录下所有 go 文件的总行数,将结果写入 ans1.txt 中

find . -name '*.go' | xargs cat | wc -l > ans1.txt

遍历当前目录下所有 go 文件,统计共有 **多少行包含字符串 thrift ** ,将结果写入 ans2.txt 中

find . -name '*.go' | xargs cat | grep thrift | wc -l > answ.txt

删除当前目录下的所有 go 文件

find . -name '*.go' | xargs rm

当前目录下包含一个文件 scores.txt,文件中有若干行数据,每行数据包含用空格隔开的 3 个字段:姓名、数学成绩、算法成绩。 将 scores.txt 文件的内容以空格为分隔符分隔成 3 列,将第一列内容写入 names.txt,第二列内容写入 mathematics.txt,第三列内容写入 algorithm.txt

cat scores.txt | cut -d ' ' -f 1 > names.txt
cat scores.txt | cut -d ' ' -f 2 > mathematics.txt
cat scores.txt | cut -d ' ' -f 3 > algorithm.txt

将 scores.txt 文件的内容以空格为分隔符分隔成 3 列,将第一列内容按字典序从小到大排序后写入names.txt

cat scores.txt | cut -d ' ' -f 1 | sort > names.txt

将 scores.txt 文件的前 5 行写入 top.txt,后 4 行写入 bottom.txt

cat scores.txt | head -5 > top.txt
cat scores.txt | tail -4 > bottom.txt

计算 scores.txt 文件的 md5sum,将结果写入 ans.txt

        ans.txt文件中只包含长度为 32 的 md5sum ,不包含其他内容

     cut -c :以字符为单位进行分割。

md5sum scores.txt | cut -c 1,32 > ans.txt
取消

感谢您的支持,我会继续努力的!

扫码支持
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦