林纳命令对照
豫言操作系统只有一个壳:开机壳、桌面终端、ssh 远程登录,以及 macOS、Linux 上的 豫构 交互,执行的是同一套句子。壳里输入的每一句都是一段豫言程序,先编译成机器码再执行;命令就是库函数,几个库函数组合起来就是一句新的程序。本页列出林纳常用命令在豫言壳里的写法,每一句都经豫构逐句编译核对。
写法要点
- 字符串写
『…』,整数写汉字数字,如 「一二」。
- 参数用
于 引出;签名里带标签的参数写 于「标签」曰 值,如 「辍役」于「号」曰「一二」。
- 无参命令直接写名字,如
「问津」。
- 一行可以写几句,用
。 分开。
- 句子的值是数、文字或列表时,壳把它印出来:
「计」以「文」于(「藏书」之「列目」于『.』) 印出当前目录的条目数。
- 「案牍」之「阅」这类命令把结果直接印出;要拿结果接着计算,用「藏书」之「阅」(文件内容)、「藏书」之「列目」(目录条目)、「藏书」之「所居」(当前目录)这些返回值的库函数。
- 标 ★ 的命令在豫言操作系统里使用,用到系统的设备接口或远程登录进程。
文件与目录
| 林纳 |
豫言 |
说明 |
pwd |
「案牍」之「所居」 |
印出当前目录 |
cd /数据 |
「案牍」之「迁」于『/数据』 |
|
ls /数据 |
「案牍」之「列目」于『/数据』 |
|
cat 卷.txt |
「案牍」之「阅」于『卷.txt』 |
|
echo 文字 > 卷.txt |
「案牍」之「著」于『卷.txt』于『文字』 |
新建或截断后写入 |
echo 文字 >> 卷.txt |
「案牍」之「续著」于『卷.txt』于『文字』 |
追加 |
cp 甲 乙 |
「案牍」之「摹」于『甲』于『乙』 |
|
mv 甲 乙 |
「案牍」之「徙」于『甲』于『乙』 |
|
mkdir 目录 |
「案牍」之「置箧」于『目录』 |
|
rm 卷.txt |
「案牍」之「焚」于『卷.txt』 |
删文件或空目录 |
find /源 -name '*。豫' |
「寻卷」于「模式」曰『*。豫』于「路径」曰『/源』 |
通配 *、?、[…],** 跨目录 |
diff 甲 乙 |
「校勘」于「旧」曰『甲』于「新」曰『乙』 |
|
sha256sum 卷.txt |
「沙二五六」于『卷.txt』 |
|
curl -o 页.html 网址 |
「索书」于「网址」曰『https://yuyan-lang.org/』于「文件」曰『页.html』 |
|
tar xzf 包.tar.gz -C 目录 |
「解档」于「档」曰『包.tar.gz』于「目录」曰『目录』 |
认 .tar、.tar.gz、.tgz、.zip |
文本
| 林纳 |
豫言 |
说明 |
grep -rn 正则 /源 |
「寻」于「模式」曰『正则』于「路径」曰『/源』 |
印出“路径:行号:行” |
head -n 80 卷.txt |
「读行」于「文件」曰『卷.txt』于「起」曰「一」于「止」曰「八零」 |
带行号 |
sed -i 's/旧文/新文/g' 卷.txt |
「全易」于「文件」曰『卷.txt』于「旧」曰『旧文』于「新」曰『新文』 |
「易」换唯一的一处 |
wc -c 卷.txt |
「计文字节」于(「藏书」之「阅」于『卷.txt』) |
印出字节数 |
echo 文字 |
「复述」于『文字』 |
|
会话与程序
| 林纳 |
豫言 |
说明 |
help |
「问津」 |
印出命令一览 |
date |
「日期」 |
|
env |
「水土」 |
印出本会话的环境 |
export 名=值 |
「设」于『名』于『值』 |
|
./程序 参数 |
「行」于『./程序』于「列」【『参数』】 |
|
exit |
「辞」 |
|
任务与后台作业
| 林纳 |
豫言 |
说明 |
ps |
「列出役」 |
★ 任务号、处理器、内存与名称 |
kill 12 |
「辍役」于「号」曰「一二」 |
★ 连同子孙一起结束 |
kill -INT 12 |
「辍」于「号」曰「一二」 |
★ 打断它正在运行的一句,等同 Ctrl+C |
nohup 程序 参数 & |
「后台行」于「程序」曰『/工具/豫构。豫行』于「参数」曰「列」【『构建』,『豫构』】 |
★ 在后台运行,ssh 断开后照常运行 |
jobs |
「作业列」 |
|
wait %1 |
「待作业」于「号」曰「一」 |
边等边印新输出 |
系统状态与设备
| 林纳 |
豫言 |
说明 |
free -h |
「存态」 |
★ 物理内存、页缓存与交换区 |
df -h |
「磁盘态」 |
★ |
lspci、lsusb |
「器列」 |
★ |
ip addr |
「网络态」 |
★ |
poweroff |
「息」 |
★ |
reboot |
「更始」 |
★ |
软件与远程登录
| 林纳 |
豫言 |
说明 |
apt install 格式化 |
「安装软件」于「名称」曰『格式化』 |
★ 从 yuyan-lang.org 下载豫行软件 |
apt list |
「软件列」 |
★ 可装的与已装的 |
passwd |
「设登录口令」于「口令」曰『口令』 |
★ 远程登录的口令 |
systemctl enable --now ssh |
「启远程登录」 |
★ 端口 22,开机自启 |
版本控制
| 林纳 |
豫言 |
说明 |
git -C /源 status |
「稽」于「参数」曰「列」【『--仓库』,『/源』,『状态』】 |
子命令:状态、差异、暂存、提交、历史、分支、切换、合并、变基、克隆、拉取、推送 |
组合成一句
| 林纳 |
豫言 |
说明 |
命令一; 命令二 |
「案牍」之「置箧」于『新目录』。「案牍」之「迁」于『新目录』 |
用 。 分开 |
echo "$(pwd)" |
「复述」于(「藏书」之「所居」于「元」) |
$(…) 写成括号里的子式 |
x=3; echo $((x*2)) |
令「甲」为「三」而「甲」乘「二」 |
印出 「六」 |
ls \| wc -l |
「计」以「文」于(「藏书」之「列目」于『.』) |
管道写成函数嵌套 |
ls \| grep 词 |
「择」以「文」于(得「名」而「文含」于『词』于「名」)于(「藏书」之「列目」于『.』) |
|
cat 甲 乙 > 丙 |
「案牍」之「著」于『丙』于((「藏书」之「阅」于『甲』)接(「藏书」之「阅」于『乙』)) |
|
[ -e 卷.txt ] && echo 有 |
若「藏书」之「实有」于『卷.txt』则「复述」于『有』否则「元」 |
|
后续版本
ssh 客户端、ping、chmod、chown、ln、mount、sort、which、uname、whoami、sleep、clear 与 touch 的对应命令留待后续版本。