终端学习笔记

# 终端学习笔记

# 定义

要说清终端是什么,我们先来看看操作系统的组成。简化来说,操作系统分为两个部分,一部分称作内核,另一部分成为用户交互界面。内核部分负责系统的全部逻辑操作,由海量命令组成,这一部分是系统运行的命脉,不与用户接触;交互界面则是开机之后所有我们所看到的东西,比如窗口,软件,应用程序等等。

终端就是连接内核与交互界面的这座桥,提供一个命令的输入输出环境,它允许用户在交互界面上打开一个叫做「Terminal 终端」的应用程序,在其中输入命令,系统会直接给出反馈。

# 与shell的关系

shell是一个命令行解释器,是linux内核的一个外壳,负责外界与linux内核的交互。shell接收用户或者其他应用程序的命令, 然后将这些命令转化成内核能理解的语言并传给内核, 内核执行命令完成后将结果返回给用户或者应用程序。当你打开一个terminal时,操作系统会将terminal和shell关联起来,当我们在terminal中输入命令后,shell就负责解释命令。

# bash

bash 是一个为GNU计划编写的Unix shell;Bourne-Again SHell。Bash是许多Linux发行版的默认Shell 。事实上,还有许多传统UNIX上用的Shell,例如tcsh、csh、ash、bsh、ksh等等,Shell Script大致都类同,当您学会一种Shell以后,其它的Shell会很快就上手,大多数的时候,一个Shell Script通常可以在很多种Shell上使用。

# zsh

Zsh是一个Linux用户很少使用的shell。这是由于大多数Linux产品安装,以及默认使用bash shell。几乎每一款Linux产品都包含有zsh,通常可以用apt-get、urpmi或yum等包管理器进行安装。

# 运行

终端是系统中一个应用程序,你可以直接在所有程序中找到它,点击打开就行。或者使用聚焦搜索,输入「终端」或「Terminal」,看到终端被选中了按下回车即可

# 基础指令

echo $SHELL   # 显示环境变量$SHELL的值
cat /etc/shells   # 查询可用的shell列表
pwd    # 查看当前路径
ls    # 查看当前路径有什么文件;ls -R 可查看所有子文件
ll    # ls -l 的简写,显示当前目录下文件详细信息
cd pathName  # 打开文件夹;pathName也可把文件拖入终端自动提取; cd ~ 返回根目录
clear  # 清除输入记录
mkdir filename  # 新建文件夹
rmdir filename  # 删除空文件夹
rm -r -f filename    # 强制删除文件夹
# 注:rm表示删除文件;-r 表示删除当前路径下所有子文件;-f表示无视被保护的文件依旧删除
open fileName  # 使用默认程序打开文件夹
touch fileName # 新建文件
vim filename # 终端打开文件;打开之后输入 i 进入编辑模式;点击 ESC 退出编辑模式;输入 :wq 保存并退出 :q!强制退出 :wq!强制保存退出
    :set nu  # 当vim nginx.conf 打开配置文件后可输入此命令显示行数
cp -r copyUrl newUrl   # 拷贝文件   copyUrl:被拷贝文件路径   newUrl:新路径
du -hd 1 .   # 查看文件存储大小

mv fromfile tofile  # 移动命令,如果tofile已经存在的话,会直接装原文件覆盖,从而造成文件的丢失

# 小技巧

touch -t 199505090000 pathName  # 修改文件创建或修改日期,这条命令是把创建时间改为1995 年 5 月 9 日 00:00 分
caffeinate   # 让电脑不就如休眠状态;恢复正常:ctrl + C
killall WeChat  # 程序假死了强行退出没用时可用这个命令强退,此为强退weChat
passwd  # 修改电脑密码
banner -w 80 hello world  # 打印机械感十足的文字

# 复制 abc-admin 项目到 work 目录下,同时自动过滤掉 abc-admin 目录下的 node_modules 目录
rsync -av --exclude="abc-admin/node_modules" abc-admin work 

# 使用 find 命令查找 abc-admin 文件夹下的所有的 node_modules 目录,并排除其内容
find abc-admin -type d -name "node_modules" -exec rm -rf {} \;
  • iTerm

command + d :左右分屏

command + shift + d :垂直分屏

# 收藏

# 参考

  1. Terminal终端入门 (opens new window)
  2. linux命令 (opens new window)
  3. shell、终端 (opens new window)
  4. shell菜鸟教程 (opens new window)
上次更新: 2/25/2024, 11:16:47 AM
最近更新
01
taro开发实操笔记
09-29
02
前端跨端技术调研报告
07-28
03
Flutter学习笔记
07-15
更多文章>