02 Linux入门命令

1 shell解释器

shell解释器接收输入字符并马上显示,在输入回车后,根据字符串去查找命令。去哪找?去环境变量指定的路径去找。

# 显示环境变量
echo $PATH
# 结果如下
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/arm/bin

什么是命令?命令就是可执行程序。

shell解释器根据第一个字符串去找应用程序,把后面的字符串作为参数传给应用程序,然后执行应用程序。为了测试shell,写了如下的c测试代码。

#include <stdio.h>

int main(int argc, char ** argv)
{
    printf("-----shell test -----\r\n");
    printf("input %d params, pointer_addr:%p\r\n", argc, argv);

    for (int i = 0; i < argc; i++)
    {   
        if (0 == i)
        {
            printf("path:%s\r\n", argv[0]);
        }
        printf("param(%d):%s\r\n", i, argv[i]);
    }   
    
    printf("-----shell test -----\r\n");
    return 0;
}

编译,添加可执行权限,设置PATH环境变量添加到指定的路径。

sudo gcc -o str_cmd str_cmd.c
sudo chmod +x str_cmd
# 环境变量添加路径
export PATH=$PATH:/home/ding/c_cmd

现在在shell中输入str_cmd,运行一下试试

command not found的原因:1 PATH指定的路径中无此程序;2 它不是可执行的程序。

2 命令提示符和命令格式 

1 命令提示符

2 linux命令格式:命令  [选项]  [参数] eg:ls -l /home,其中,命令这部分是肯定存在的,选项是以“-”来指明的,选项和参数不一定存在。

3 家目录。 ~ 表示家目录;  . 表示当前路径; .. 表示上一级路径; - 表示上一次路径;

4 mkdir dir0:创建目录; mkdir -p dir0/dir1:连续创建多级目录(父目录和子目录)(-p:parent);

5 rmdir:删除目录;

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值