Photo by Uomi on pixiv
443 字
2 分钟
课程概览与Shell
Shell是什么
GUI等交互接口可以覆盖 80% 的使用场景,但为了充分利用计算机的能力,我们不得不回到最根本的方式,使用文字接口:Shell
使用Shell
打开终端,执行命令:date
程序
❯ date
Sat Sep 7 16:26:57 CST 2024
~ ❯
执行命令同时传递参数:
❯ echo hello
hello
~ ❯ ```
shell 是一个编程环境。当你在 shell 中执行命令时,您实际上是在执行一段 shell 可以解释执行的简短代码。
```shell
❯ which date
/bin/date
~ ❯
在Shell导航
/
:在 Linux 和 macOS 路径分割
\
:Windows 路径分割
cd
:目录切换
..
:上一级目录
.
:当前目录
pwd
:获取当前工作目录
路径 /
:系统的根目录
绝对路径
:以 /
开头
相对路径
:相对于当前工作目录的路径
❯ pwd
/Users/yvan
❯ cd /Users
❯ pwd
/Users
❯ cd ..
❯ pwd
/
❯ cd ./Users
❯ pwd
/Users
❯ cd yvan
❯ pwd
/Users/yvan
❯ ../../bin/echo hello
hello
~ ❯
ls
:查看指定目录下包含哪些文件 ls -l dir
:查看目录下文件或文件夹的详细信息
❯ ls -l /Users
total 0
drwxrwxrwt 18 root wheel 576 Sep 3 09:55 Shared
drwxr-x---+ 76 yvan staff 2432 Sep 7 16:57 yvan
drwxr-x---
解析
d
:目录
-
:不具备权限
w
:修改权限
r
:读取权限
x
:可执行权限
三个字符一组
rwx
:文件所有者权限
-x-
:用户组(users)权限
---
:其它用户权限
用户手册
❯ man ls
使用 q
退出该程序
在程序间创建连接
输入输出:
❯ echo hello > hello.txt
❯ cat hello.txt
hello
❯ cat < hello.txt
hello
❯ cat < hello.txt > hello2.txt
❯ cat hello2.txt
hello
~ ❯
>>
:内容追加
|
:将一个程序的输出和另外一个程序的输入连接起来
根用户
sudo