
目录
1. 命令行介绍
我们进入Ubuntu当中,通过快捷键“Ctrl+Alt+T”打开终端,我们可以看见如下提示符:

其含义如下:
- dky:当前登录的用户名;
- dky-virtual-machine:主机名;
- ~:当前所在目录,~表示家目录;
- $:用户提示符,如果是root管理员,显示#,普通用户则显示$。
而Linux的命令由三部分组成:
执行的命令 [命令的选项] [命令的参数]
其中命令的选项和命令的参数用中括号括起来表示该部分可选,可以根据需要进行添加,并且命令选项参数都是以空格分隔,无论几个空格都算一个,举个例子:

ls -l /home 命令的作用是:以详细列表的形式,显示 /home 目录下的所有文件和子目录的信息,对于可选项我们可以先不选择看一下:

- ls /home:列出指定目录 (/home) 的内容;
- ls -l:列出当前工作目录的内容。
对于一些其他Linux的基础命令,详细可以参考如下链接:
为了完成上述命令的功能,通过shell去寻找命令所对应的程序(shell就是一个应用程序,我们可以通过键盘、串口给它发送命令,回车后就会执行这些命令),而shell需要去哪里找呢?
2. PATH环境变量
shell会去PATH环境变量所指示的位置找,而环境变量是什么意思呢,我们来执行如下命名:
echo $PATH

还可以通过如下命令显示环境变量,以及其对应的值:
env

那么如何添加环境变量呢?我们举个例子来说明一下,首先准备一个.c文件,代码如下:
#include <stdio.h>
int main(int argc, char** argv)
{
if (argc >= 2)
printf("Hello,%s!\n", argv[1]);
else
printf("Hello,world!\n");
return 0;
}

此时我们进入桌面查看会发先只有hello.c文件:

然后编译一下,注意这里需要安装gcc编译器否则会进行如下提示:

输入如下命令进行安装:
sudo apt install gcc
密码是自己的密码,期间遇到选项选择“Y”:

此时在输入可以发现能编译,但是输入hello发现找不到:

不过我们可以通过相对路径或者绝对路径进行寻找,发现正常编译:

绝对路径:Linux 下的根目录为“/”,从根目录下出发可以找到任意目录、任意文件。从根目录开始表示目录或文件的方法称为“绝对路径”。比如:
/home/dky /home/dky/1.txt /bin/pwd相对路径:绝对路径需要一点点的区查找之前的路径,,并且写起来也比较麻烦,我们可以使用相对路径,假如我们此时位于/home/dky目录下,那么:
./1.txt //表示/home/dky/1.txt .表示当前路径 ..表示上一级路径 ../..表示上上级路径
前面我们提到,shell会去PATH环境变量所指示的位置找,我们通过cp命令将hello复制到一些环境变量路径下,这里我们将其复制到/usr/local/bin路径下,更改个名字:

此时输入hello2可以发现能够运行,但是hello还是不能运行,因为其未在路径下:

2.1 临时设置
除了上述方法,我们还可以使用如下方法进行临时设置他,首先我们将hello移到/home/dky/目录下:

此时暂时无法运行,我们设置如下:
export PATH=$PATH:/home/dky

可以发现能够正常执行,不过需要注意,该命令只对当前终端有效,我们重新打开一个终端会发现,运行后还是无法运行:

2.2 永久设置(仅对当前用户有效)
输入如下命令,回车:
gedit ~/.bashrc
进入如下界面,在对下面添加代码:
export PATH=$PATH:/home/dky
这行命令的意思是,将原来的 PATH 值保持不变,并在其末尾加上一个新的目录 /home/dky。这样,你就可以在终端的任何位置,直接运行存放在 /home/dky 目录下的可执行程序或脚本,而无需输入它们的完整路径。

保存退出:

此时运行会发现还是无法运行:

关掉当前页面重新打开一个终端就可以发现能够正常运行了:

为什么说这个只能在本用户运行呢,我们可以通过如下命令,进入到root用户下:
su root

此时运行 hello 会发现还是无法运行:

可以通过 exit 退出root用户:

2.3 永久设置(对所有用户有效)
输入如下命令,修改 /etc/environment ,按照图示步骤操作:
sudo gedit /etc/environment

然后关闭中断重新打开,可以发现别的用户也可以使用:

对于Linux命令的使用可以参考下面这个链接,如果使用到新的命令会及时在这个链接进行补充说明:
对于文件和文件夹权限的操作由于比较多,因此单写了一张,链接如下:
Linux命令进阶·如何修改文件和文件夹权限(chomd命令的使用)、如何修改用户和用户组(chown命令的使用)_linux更改文件所属用户和权限-优快云博客



被折叠的 条评论
为什么被折叠?



