Skip to content

常用Shell命令

文件与目录操作

  • ls:用于显示目录内容。搭配参数使用,功能更丰富,例如ls -l能展示详细信息,ls -a可显示隐藏文件。
  • cd [目录名]:实现目录切换。比如cd /home是切换到home目录,cd ..则是返回上级目录。
  • pwd:显示当前工作目录的路径。
  • mkdir [目录名]:创建新目录,像mkdir new_folder就是创建一个名为new_folder的新目录。
  • rm [文件/目录]:删除文件或目录。删除目录时需加上-r参数,例如rm -r old_folder;若要强制删除,可使用-f参数,如rm -rf unwanted_folder
  • cp [源文件] [目标文件]:复制文件或目录。复制目录时同样需要-r参数,例如cp -r source_dir dest_dir
  • mv [源文件] [目标文件]:移动文件或重命名文件。比如mv file1.txt docs/是将file1.txt移动到docs目录下,mv old_name.txt new_name.txt则是将文件重命名。

文件内容查看与编辑

  • cat [文件]:一次性显示文件的全部内容。
  • more [文件]:分屏显示文件内容,适合查看较长的文件。
  • less [文件]:与more类似,但功能更强大,支持向前和向后翻页等操作。
  • head [文件]:显示文件的前几行,默认显示前10行,可通过-n参数指定行数,如head -n 5 file.txt
  • tail [文件]:显示文件的后几行,默认显示后10行,同样可通过-n参数指定行数,如tail -n 3 file.txt;使用-f参数还能实时监控文件的更新情况。
  • nano [文件]:简单易用的文本编辑器,适合初学者使用。
  • vim [文件]:功能强大但操作相对复杂的文本编辑器,有多种模式,需要一定的学习成本。

文件搜索

  • grep [关键词] [文件]:在文件中搜索包含指定关键词的行,例如grep "error" log.txt
  • find [路径] [条件]:基于指定条件在文件系统中查找文件。比如find /home -name "*.txt"是在/home目录下查找所有扩展名为.txt的文件。

系统信息

  • uname -a:显示系统的详细信息,包括内核版本、主机名等。
  • df -h:查看磁盘空间使用情况,以人类可读的格式显示。
  • free -h:查看内存使用情况,同样以人类可读的格式呈现。
  • top:实时监控系统进程和资源使用情况。
  • htop:功能更丰富的系统监控工具,界面更加直观。
  • ps aux:显示当前运行的所有进程信息。

用户与权限

  • whoami:显示当前登录的用户名。
  • id:查看用户的身份信息,包括用户ID和组ID等。
  • chmod [权限] [文件/目录]:修改文件或目录的权限。例如chmod +x script.sh是为script.sh文件添加可执行权限。
  • chown [用户]:[组] [文件/目录]:更改文件或目录的所有者和所属组。

网络

  • ping [主机名/IP]:测试与目标主机的网络连通性。
  • ifconfig:显示网络接口的配置信息。
  • ip addr:查看和配置网络接口,是ifconfig的替代命令。
  • netstat -tulpn:显示网络连接、路由表和网络接口信息。
  • curl [URL]:用于传输数据,支持多种协议,常用来测试API或下载文件。
  • wget [URL]:从网络上下载文件。

压缩与归档

  • tar -cvf [归档文件名.tar] [文件/目录]:创建tar归档文件,例如tar -cvf backup.tar documents/
  • tar -xvf [归档文件名.tar]:解压tar归档文件。
  • tar -zcvf [归档文件名.tar.gz] [文件/目录]:创建gzip压缩的tar归档文件。
  • tar -zxvf [归档文件名.tar.gz]:解压gzip压缩的tar归档文件。
  • zip -r [压缩文件名.zip] [文件/目录]:创建zip压缩文件。
  • unzip [压缩文件名.zip]:解压zip压缩文件。

其他实用命令

  • echo [内容]:在终端输出指定内容,也可用于将内容输出到文件,如echo "Hello" > test.txt
  • |(管道):将一个命令的输出作为另一个命令的输入,例如ls -l | grep "txt"
  • >>>:重定向命令的输出。>会覆盖文件原有内容,>>则是追加到文件末尾。
  • history:显示历史命令记录。
  • man [命令]:查看命令的手册页,获取详细的使用说明。
  • alias:为命令创建别名,简化复杂命令的输入,例如alias ll='ls -l'

命令行连接(SSH)

sudo apt update
sudo apt install openssh-server  # 安装SSH服务
sudo systemctl enable --now ssh  # 启动并设置开机自启

未完待续~ 🎉