Linux – 常用bash指令

文件和文件夹操作

  • cd 切换目录
    • cd / 切换到根目录
    • cd ~ 切换到当前用户的home目录
    • cd – 切换到上一个目录
    • cd ../ 切换到上一级目录
  • ls 列出目录所有文件
    • ls -a 显示所有的文件,包括隐藏文件
    • ls -l 以列表的形式显示文件
    • ls -l -h 以人类能够阅读的方式显示文件大小
  • cat file 显示文件内容
  • pwd 显示当前绝对路径
  • mkdir dir 创建文件夹
  • rmdir dir 移除文件夹(空文件夹)
  • touch file 创建文件
  • rm 删除文件
    • rm filename 删除文件
    • rm -r dirname 删除文件夹所有文件
  • mv file path/file 移动文件或文件夹(可以用于重命名)
  • cp 复制文件
    • cp file path 复制文件
    • cp -r dirname path 复制文件夹到另一个文件夹
    • cp -r dirname/* path 复制文件夹里的内容到另一个文件夹
  • file 识别文件类型
    • file filename 识别文件类型(通过文件的头部信息)
  • chmod 更改权限
    • u:拥有者的权限
    • g:同一个用户组权限
    • o:其他用户权限
    • a:所有用户权限
    • r:读权限,用数字4表示
    • w:写权限,用数字2表示
    • x:执行权限,用数字1表示
    • chmod 774 file 文件拥有者和同一个用户组的用户拥有所有权限,其他用户只有读权限
  • find 查找
    • find ./ -name '*.log' 查找当前目录下的.log文件
    • find ./ -name '*.py' 2>/dev/null | xargs grep --color -nE 'content' 查找文件内容包含content的文件并显示行号
  • df 显示磁盘空间使用情况
    • df -h 以人类阅读的方式显示磁盘空间使用情况(即显示KB、MB等而不是总字节数)
  • du path 显示文件夹空间使用情况
    • du -h . 以人类阅读的方式显示当前目录的磁盘使用情况
    • du -sh . 仅显示总计
    • du -h . -d 1 只统计当前目录下的文件,不统计子目录(深度为1)

磁盘操作

  • mount device dir 挂载磁盘或iso文件 (永久挂载需修改 /etc/fstab)
    • mount /dev/sdc1 /mnt/raid1 挂载硬盘
    • mount -o loop -t iso9660 ubuntu.iso /media/dvd1 挂载iso

管道命令

  管道命令接在 | 后面,将前面的结果继续处理之后再输出。

  • grep 筛选符合条件的行并输出(支持正则表达式)
    • grep -c 计算找到 ‘查找字符串’的次数
    • grep -n 输出行号
    • ls -l | grep ‘^d’ 显示当前目录下的文件夹
  • wc 统计行数或字数
    • wc -l 统计行数
    • wc -w 统计单词数
    • wc -m 统计字符数

远程连接

  • ssh 远程连接
    • ssh 192.168.1.100 远程连接(使用当前用户)
    • ssh username@192.168.1.100 指定用户名连接
    • ssh -p2000 username@192.168.1.100 指定端口连接
  • scp 传文件
    • scp ./file.zip username@192.168.1.100:~/file.zip 上传文件
    • scp username@192.168.1.100:~/file.zip ./file.zip 下载文件
    • scp -P 2000 ./file.zip username@192.168.1.100:~/file.zip 上传文件(指定端口)
    • scp -r ./dir username@192.168.1.100:~/ 上传文件夹(指定端口)

下载文件

  • curl 下载文件

    • curl -O www.xyu.ink/download.zip 下载文件
    • curl -C - -O www.xyu.ink/download.zip 断点续传
  • wget 下载文件

    • wget www.xyu.ink/download.zip 下载文件

进程

  • top 显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等
  • htop 高级的显示进程列表,并可以显示CPU、内存使用率等情况

压缩、解压

  • zip 压缩成zip
    • zip -q -r html.zip ./html 压缩html文件夹为html.zip
    • zip -q -r html.zip * 压缩当前文件夹为 html.zip
  • upzip 解压zip
    • unzip html.zip 解压html.zip到当前路径(会新建一个html文件夹)
  • tar 打包成tar.gz或tgz文件
    • tar -zcvf file.tar.gz dir 将dir和其下所有文件(夹)压缩
    • tar -zxvf FileName.tar.gz 解压到当前目录
    • tar -C dir -zxvf file.tar.gz 解压到指定目录

安装、卸载软件

  • 通过apt-get安装的软件
    • sudo apt-get update 更新软件包列表
    • sudo apt-get install packagename 安装软件包
    • sudo apt-get remove packagename 卸载一个已安装的软件包(保留配置文档)
    • sudo apt-get remove –purge packagename 卸载一个已安装的软件包(删除配置文档)
    • sudo apt-get autoremove packagename 删除包及其依赖的软件包
  • 通过deb文件安装的软件
    • 安装deb软件包 dpkg -i xxx.deb
    • 删除软件包 dpkg -r xxx.deb
    • 连同配置文件一起删除 dpkg -r –purge xxx.deb

参考

http://www.runoob.com/linux/linux-command-manual.html

https://www.cnblogs.com/jngwl/articles/10078273.html

https://www.cnblogs.com/gaojun/p/3359355.html