From fb71a59cb0d601fdb483e69966417bc9b62a87e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A9=AC=E6=97=AD=E4=B8=9C?= <3228676708@qq.com> Date: Wed, 19 Jun 2024 08:36:39 +0000 Subject: [PATCH 1/5] =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=92=8C=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E7=BB=84=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 马旭东 <3228676708@qq.com> --- ...67\347\273\204\347\256\241\347\220\206.md" | 175 ++++++++++++++++++ 1 file changed, 175 insertions(+) create mode 100644 "01\351\251\254\346\227\255\344\270\234/2024.06.14-\347\224\250\346\210\267\345\222\214\347\224\250\346\210\267\347\273\204\347\256\241\347\220\206.md" diff --git "a/01\351\251\254\346\227\255\344\270\234/2024.06.14-\347\224\250\346\210\267\345\222\214\347\224\250\346\210\267\347\273\204\347\256\241\347\220\206.md" "b/01\351\251\254\346\227\255\344\270\234/2024.06.14-\347\224\250\346\210\267\345\222\214\347\224\250\346\210\267\347\273\204\347\256\241\347\220\206.md" new file mode 100644 index 0000000..c78a4e5 --- /dev/null +++ "b/01\351\251\254\346\227\255\344\270\234/2024.06.14-\347\224\250\346\210\267\345\222\214\347\224\250\346\210\267\347\273\204\347\256\241\347\220\206.md" @@ -0,0 +1,175 @@ +## 用户和用户组管理 + +- 用户管理 + - 添加账户 useradd -m -s /bin/bash db2 + - 删除账户 userdel -r db2 + - 修改账户 usermod [选项同添加账户] db2 + - 查看帐户 getent passwd db2 +- 用户组管理 + - 添加用户组 groupadd stu1 + - 删除用户组 groupdel stu1 + - 添加用户到用户组 usermod -aG stu1 db2 +- 密码管理 + - 设置密码 passwd +- sudo权限管理 + - usermod -aG sudo xxx + - 修改/etc/sudoers文件 +- 登录权限管理 +- 用户环境管理 + - 用户配置文件 : .bashrc + - 用户环境变量: $PATH、$HOME、$SHELL + +## 文件与目录的权限管理 + +- https://www.runoob.com/linux/linux-file-attr-permission.html + + ![20240605092950](./assets/20240605092950.png) + +- 文件类型 + - -普通文件 + - d目录 + - l连接文件 + - b c s p 等其它文件 + +- 基本权限 + - r 读 + - w 写 + - x 执行 + +- 权限表示 + - 字符表示 + - 数字表示 + - 4 代表 r + - 2 代表 w + - 1 代表 x + - 权限修改 chown 修改拥有者 + - chgrp 修改所属组 + - 权限的继承 + - 目录权限下文件和目录的影响 + - umask + - 特权权限 + - SUID + - SGID + - SBIT + - 隐藏权限 + - i + - 用在文件上,无法对该文件进行任何修改 + - 用在目录上,无法在里面创建新文件,但可以修改已有文件 + - a + - 除了可追加内容外,无法进行其它修改 + - 隐藏权限的操作 + - 修改隐藏权限 chattr + - chattr +i XXX + - chattr -i XXX + - 查看隐藏权限 + - lsattr + + + +### 权限管理练习 + +1. 创建/guanli 目录,在/guanli下创建zonghe 和 jishu 两个目录(一条命令) + +2. ```js + mkdir -p /guanli/zonghe &&mkdir /guanli/jishu + ``` + + + +3. 添加组帐号zonghe、caiwu、jishu,GID号分别设置为2001、2002、2003 + + ```bash + sudo groupadd -g 2001 zonghe + sudo groupadd -g 2002 caiwu + sudo groupadd -g 2003 jishu + + sudo getent group #查看用户组 + ``` + + + +4. 创建jerry、kylin、tsengia、obama用户,其中的kylin用户帐号在2020年12月30日后失效 + +5. ```js + mxd@hecs-66950:~$ sudo useradd -e 2020-12-30 kylin + mxd@hecs-66950:~$ sudo useradd tsengia + mxd@hecs-66950:~$ sudo useradd obama + mxd@hecs-66950:~$ cat /etc/passwd |cut -d: -f 1-3(查看用户) + + ``` + +6. 将jerry、kylin、tsengia、obama等用户添加到zonghe组内 + + 1. ```js + mxd@hecs-66950:~$ sudo usermod -a -G zonghe jerry + mxd@hecs-66950:~$ sudo usermod -a -G zonghe kylin + 第一种方法 + ``` + + 2. ```js + mxd@hecs-66950:~$ sudo gpasswd -M tsengia,obama zonghe + 第二种方法 + mxd@hecs-66950:~$ sudo groups kylin(查看用户kylin所在的组) + ``` + +7. 创建handy、cucci用户,其中cucci帐号的登录Shell设置为“/sbin/nologin” + + 1. ```html + mxd@hecs-66950:~$ sudo useradd handy && sudo useradd cucci + mxd@hecs-66950:~$ sudo usermod -s /sbin/nologin cucci + ``` + +8. 将handy、cucci等用户添加到jishu组内 + + 1. ```js + mxd@hecs-66950:~$ sudo usermod -a -G jishu handy + mxd@hecs-66950:~$ sudo usermod -a -G jishu cucci + ``` + +9. 将上述的所有用户均要求加入到guanli组内 + + 1. mxd@hecs-66950:~$ sudo gpasswd -M jerry,kylin,tsengia,obama,handy,cucci guanli + +10. 将zonghe组内的obama用户删除 + + 1. mxd@hecs-66950:~$ sudo gpasswd -d obama zonghe + 1. mxd@hecs-66950:~$ sudo getent group zonghe (查看zonghge组内的用户) + +11. 为jerry用户设置密码为“123456”(使用普通方法)为cucci用户设置密码为“redhat” + + 1. mxd@hecs-66950:~$ sudo passwd jerry + New password: + Retype new password: + passwd: password updated successfully + +12. 将jerry用户锁定,并查看锁定状态 + + 1. mxd@hecs-66950:~$ sudo usermod -L jerry + [sudo] password for mxd: + mxd@hecs-66950:~$ sudo passswd -S jerry + 2. mxd@hecs-66950:~$ sudo passwd -S jerry + jerry L 06/17/2024 0 99999 7 -1 + +13. 打开两个xshell窗口,通过(who 或者 w)命令查看连接状态,并通过fuser杀掉其中一个 + +14. 查看cucci用户,属于那些组,并查看其详细信息 + +15. 手工创建账号student(预留) + +16. 设置权限及归属:/guanli目录属组设为guanli, /guanli/zonghe目录的属组设为zonghe /guanli/jishu目录的属组设为jishu,设置3个目录都是禁止其他用户访问的权限 + +17. 建立公共目录/ceshi允许技术组内的所有用户读取、写入、执行文件, 禁止其他用户读、写、执行 + +18. 清除jerry用户密码 + + 1. mxd@hecs-66950:~$ sudo passwd -d jerry + passwd: password expiry information changed. + +19. 锁定cucci用户密码并查看状态 + +20. 修改obama用户的UID为8888 + +21. 通过passwd命令修改kylin用户的最长密码使用期限为60天 + +22. 通过id groups等命令查看用户handy信息 + -- Gitee From b3c1d847583eb2b1e9f16e645f5994e9cb892b0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A9=AC=E6=97=AD=E4=B8=9C?= <3228676708@qq.com> Date: Wed, 19 Jun 2024 08:37:03 +0000 Subject: [PATCH 2/5] =?UTF-8?q?=E5=91=A8=E6=9C=9F=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 马旭东 <3228676708@qq.com> --- ...73\345\212\241\347\256\241\347\220\206.md" | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 "01\351\251\254\346\227\255\344\270\234/2024.06.15-\345\221\250\346\234\237\344\273\273\345\212\241\347\256\241\347\220\206.md" diff --git "a/01\351\251\254\346\227\255\344\270\234/2024.06.15-\345\221\250\346\234\237\344\273\273\345\212\241\347\256\241\347\220\206.md" "b/01\351\251\254\346\227\255\344\270\234/2024.06.15-\345\221\250\346\234\237\344\273\273\345\212\241\347\256\241\347\220\206.md" new file mode 100644 index 0000000..513672a --- /dev/null +++ "b/01\351\251\254\346\227\255\344\270\234/2024.06.15-\345\221\250\346\234\237\344\273\273\345\212\241\347\256\241\347\220\206.md" @@ -0,0 +1,52 @@ +# 周期任务管理 + + ----计划任务 + +=> 提供一种可以重复的指定重复周期的一种机制,一种执行机制分类 + +1. 系统级 + + /etc/cron.hourly/(每小时要执行) + /etc/cron.daily/(每天要执行) + /etc/cron.weekly/(每星期要执行) + /etc/cron.monthly/(每月要执行) + +2. 用户级 + + /var/spool/cron/用户名 + +3. 全局配置 + + /etc/crontab + +### crontab + +``` +* * * * * command +分 时 天 月 周 命令 +``` + +命令格式: + +``` +编辑 + crontab -e [-u 用户名] +查看 + crontab -l [-u 用户名] +删除 + crontab -r [-u 用户名] + +``` + +特殊符号: + +``` +*: + 匹配范围内任意时间 +,: + 表示多个不连续的时间点 +-: + 表示连续的时间范围 +/n: + 指定时间频率,每n... +``` \ No newline at end of file -- Gitee From 209e2903c618fd73ef9f53eb1cc1f11b1aa6d2e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A9=AC=E6=97=AD=E4=B8=9C?= <3228676708@qq.com> Date: Wed, 19 Jun 2024 08:37:41 +0000 Subject: [PATCH 3/5] =?UTF-8?q?=E5=91=A8=E6=9C=9F=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E7=BB=83=E4=B9=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 马旭东 <3228676708@qq.com> --- ...73\345\212\241\347\273\203\344\271\240.md" | 134 ++++++++++++++++++ 1 file changed, 134 insertions(+) create mode 100644 "01\351\251\254\346\227\255\344\270\234/2024.06.15-\345\221\250\346\234\237\344\273\273\345\212\241\347\273\203\344\271\240.md" diff --git "a/01\351\251\254\346\227\255\344\270\234/2024.06.15-\345\221\250\346\234\237\344\273\273\345\212\241\347\273\203\344\271\240.md" "b/01\351\251\254\346\227\255\344\270\234/2024.06.15-\345\221\250\346\234\237\344\273\273\345\212\241\347\273\203\344\271\240.md" new file mode 100644 index 0000000..1efb631 --- /dev/null +++ "b/01\351\251\254\346\227\255\344\270\234/2024.06.15-\345\221\250\346\234\237\344\273\273\345\212\241\347\273\203\344\271\240.md" @@ -0,0 +1,134 @@ +### 周期任务练习 + +执行在家目录touch a.txt + +``` +gaoyashi@iZf8zh6micauwcw30jcu5tZ:~$ crontab -e +no crontab for gaoyashi - using an empty one + +Select an editor. To change later, run 'select-editor'. + 1. /bin/nano <---- easiest + 2. /usr/bin/vim.basic + 3. /usr/bin/vim.tiny + +Choose 1-3 [1]: 2 +crontab: installing new crontab +``` + + + +1. 每天3:00执行一次 + + ``` + 0 3 * * * /home/touch a.txt + ``` + +2. 每周六2:00执行 + + ``` + 0 2 * * 6 /home/touch a.txt + ``` + +3. 每周六1:05执行 + + ``` + 05 1 * * 6 /home/touch a.txt + ``` + +4. 每周六1:25执行 + + ``` + 25 1 * * 6 /home/touch a.txt + ``` + +5. 每天8:40执行 + + ``` + 40 8 * * * /home/touch a.txt + ``` + +6. 每天3:50执行 + + ``` + 50 3 * * * /home/touch a.txt + ``` + +7. 每周一到周五的3:40执行 + + ``` + 40 3 * * 1-5 /home/touch a.txt + ``` + +8. 每周一到周五的3:41开始,每10分钟执行一次 + + ``` + 41/10 3 * * 1-5 /home/touch a.txt + ``` + +9. 每天的10:31开始,每2小时执行一次 + + ``` + 31 10/2 * * * /home/touch a.txt + ``` + +10. 每周一到周三的9:30执行一次 + + ``` + 30 9 * * 1-3 /home/touch a.txt + ``` + +11. 每周一到周五的8:00,每周一到周五的9:00执行一次 + + ``` + 0 8,9 * * 1-5 /home/touch a.txt + ``` + +12. 每天的23:45分执行一次 + + ``` + 45 23 * * * /home/touch a.txt + ``` + +13. 每周三的23:45分执行一次 + + ``` + 45 23 * * 3 /home/touch a.txt + ``` + +14. 每周一到周五的9:25到11:35、13:00到15:00之间,每隔10分钟执行一次 + + ``` + 25-35/10 9-11, * * 1-5 /home/touch a.txt + */10 13-15 * * 1-5 /home/touch a.txt + ``` + +15. 每周一到周五的8:30、8:50、9:30、10:00、10:30、11:00、11:30、13:30、14:00、14:30、5:00分别执行一次 + + ``` + 30,50 8 * * 1-5 /home/touch a.txt + 30 9 * * 1-5 /home/touch a.txt + 30,00 10-11,14 * * 1-5 /home/touch a.txt + 30 13 * * 1-5 /home/touch a.txt + ``` + +16. 每天16:00、10:00执行一次 + + ``` + 00 16,10 * * * /home/touch a.txt + ``` + +17. 每天8:10、16:00、21:00分别执行一次 + + ``` + 10 8 * * * /home/touch a.txt + 00 16,21 * * /home/touch a.txt + ``` + +18. 每天7:47、8:00分别执行一次 + + ``` + 47 7 * * * /home/touch a.txt + 00 8 * * * /home/touch a.txt + ``` + + \ No newline at end of file -- Gitee From 28b66b3cdc9db997393f4b2c30f9802c7735ead7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A9=AC=E6=97=AD=E4=B8=9C?= <3228676708@qq.com> Date: Wed, 19 Jun 2024 08:38:00 +0000 Subject: [PATCH 4/5] =?UTF-8?q?=E7=8E=AF=E5=A2=83=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 马旭东 <3228676708@qq.com> --- ...57\345\242\203\345\217\230\351\207\217.md" | 145 ++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 "01\351\251\254\346\227\255\344\270\234/2024.06.18-\347\216\257\345\242\203\345\217\230\351\207\217.md" diff --git "a/01\351\251\254\346\227\255\344\270\234/2024.06.18-\347\216\257\345\242\203\345\217\230\351\207\217.md" "b/01\351\251\254\346\227\255\344\270\234/2024.06.18-\347\216\257\345\242\203\345\217\230\351\207\217.md" new file mode 100644 index 0000000..bcea6ee --- /dev/null +++ "b/01\351\251\254\346\227\255\344\270\234/2024.06.18-\347\216\257\345\242\203\345\217\230\351\207\217.md" @@ -0,0 +1,145 @@ +# 环境变量 + +1. 用户级别 + + 存储在用户家目录的个人配置文件中,eg. `~/.bashrc`、`~/.profile` + + 用于定义用户个性化的Shell设置,如别名、路径等 + +2. 系统级别 + + 存储在系统范围的配置文件中,eg`/etc/environment`、`/etc/profile` + + 为所有用户和系统服务提供全局的环境设置。java_home + +3. 加载顺序(通常) + + `/etc/environment` > `/etc/profile` > `~/.profile` > `~/.bashrc` + +4. 临时环境变量 + + 局部: + + ```bash + gaoyashi@iZf8zh6micauwcw30jcu5tZ:~$ myname=yyy + ``` + + 全局:export + + ```bash + export MY_VAR="value" # export 变量名=值 环境变量是全局的,整个环境有效 + ``` + + 定义一个变量时,在变量名前加了**export**关键字,就是环境变量,作用域是全局环境子子进程中也有效,否则就是临时变量,只在当前脚本文件或shell中有效 + +5. 永久环境变量 + + 用户级别: + + 编辑用户的 `~/.bashrc` 或 `~/.profile` 文件 + + ```bash + export MY_VAR="value" # 保存文件后,新的设置会在下次登录时生效 + ``` + + 系统级别: + + 编辑 `/etc/environment` 或 /etc/profile文件 + + ```bash + MY_VAR="value" # 这里不需要使用 `export` 命令。保存文件后,变量会在系统启动时生效 + ``` + +6. 设置和使用实例 + + - 设置路径变量(PATH) + + ```bash + # 在 ~/.bashrc 中添加 + export PATH=$PATH:/path/to/your/scripts + ``` + + - 定义Java环境变量(JAVA_HOME) + + + ```bash + # 在 ~/.bashrc 或 /etc/environment 中添加 + export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 + export PATH=$JAVA_HOME/bin:$PATH + ``` + + - 设置代理服务器(HTTP_PROXY、HTTPS_PROXY) + + + ```bash + # 在 ~/.bashrc 中添加 + export HTTP_PROXY=http://proxy.example.com:8080 + export HTTPS_PROXY=http://proxy.example.com:8080 + ``` + + - 配置编辑器(EDITOR) + + + ```bash + # 在 ~/.bashrc 中添加 + export EDITOR=/usr/bin/vim + ``` + + - 设置语言和地区(LANG、LC_系列变量) + + + ```bash + # 在 ~/.bashrc 或 /etc/environment 中添加 + export LANG=en_US.UTF-8 + export LC_ALL=en_US.UTF-8 + ``` + + - 自定义命令别名(alias) + + + ```bash + # 在 ~/.bashrc 中添加 + alias ll='ls -alF' + alias grep='grep --color=auto' + ``` + + - 设置临时环境变量 + + + ```bash + # 临时设置变量 + export MY_VAR="value" + ``` + +7. ### 常用环境变量 + + **系统级** + + * `PATH` 可执行文件的搜索路径 + * `LANG` 定义系统的语言环境和字符集, export LANG=zh_CN.utf8,编辑文件不乱码 + * `LANGUAGE` 用于设置消息语言的优先级 ,提示语言为中文 + * `EDITOR` 默认文本编辑器 editor + + **用户级** + + * **`HOME`** :当前用户的主目录。 + * **`USER`**:当前用户名。 + * **`UID`**:当前用户的用户ID。 + * **`SHELL`**:当前用户的默认Shell。 + +8. 总结 + + #### 按生命周期分 + + - 永久环境变量 写在指定类型的配置文件,永不失效 ~/.bashrc /etc/profile.d/xxx.sh + + - 临时环境变量 临时使用export 命令设置的环境变量 退出终端即失效 + + + + #### 按作用域分 + + * 系统级环境变量 对所有用户生效 /etc/profile.d/xxx.sh + * 用户级环境变量 只对当前用户生效 ~/.bashrc + + \ No newline at end of file -- Gitee From 0eb58979c322721d523f4ba5946c47bf51078a52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A9=AC=E6=97=AD=E4=B8=9C?= <3228676708@qq.com> Date: Wed, 19 Jun 2024 08:38:30 +0000 Subject: [PATCH 5/5] =?UTF-8?q?=E7=8E=AF=E5=A2=83=E5=8F=98=E9=87=8F?= =?UTF-8?q?=E7=BB=83=E4=B9=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 马旭东 <3228676708@qq.com> --- ...30\351\207\217\347\273\203\344\271\240.md" | 129 ++++++++++++++++++ 1 file changed, 129 insertions(+) create mode 100644 "01\351\251\254\346\227\255\344\270\234/2024.06.18-\347\216\257\345\242\203\345\217\230\351\207\217\347\273\203\344\271\240.md" diff --git "a/01\351\251\254\346\227\255\344\270\234/2024.06.18-\347\216\257\345\242\203\345\217\230\351\207\217\347\273\203\344\271\240.md" "b/01\351\251\254\346\227\255\344\270\234/2024.06.18-\347\216\257\345\242\203\345\217\230\351\207\217\347\273\203\344\271\240.md" new file mode 100644 index 0000000..1ad3218 --- /dev/null +++ "b/01\351\251\254\346\227\255\344\270\234/2024.06.18-\347\216\257\345\242\203\345\217\230\351\207\217\347\273\203\344\271\240.md" @@ -0,0 +1,129 @@ +### 练习题 1: 显示当前所有的环境变量 + +* 使用`printenv`或`env`命令来显示所有的环境变量。 + + +```bash +mxd@hecs-66950:~$ env +``` +### 练习题 2: 显示`HOME`环境变量的值 + +* 使用`echo`命令和`$`符号来显示`HOME`环境变量的值。 + + +```bash +mxd@hecs-66950:~$ echo $HOME +#在这里,$HOME是一个特殊的环境变量,表示当前用户的主目录路径。使用echo命令和$符号可以快速显示其值。 +``` +### 练习题 3: 临时设置一个新的环境变量 + +* 设置一个名为`MY_AGE`的环境变量,并将其值设置为`18`。 + + +```bash +mxd@hecs-66950:~$ export MY_AGES=20 +mxd@hecs-66950:~$ echo $MY_AGES +20 +``` +### 练习题 4: 显示新设置的环境变量 + +* 使用`echo`命令来显示`MY_AGE`的值。 + + +```bash +echo $MY_AGE +``` +### 练习题 5: 在新的shell会话中检查环境变量 + +* 打开一个新的终端窗口或标签页,并尝试显示`MY_AGE`的值。你会看到什么?为什么? +* 答:是空的,因为如果之前的设置仅在当前 shell 会话中有效(使用 `export` 命令设置的临时环境变量),那么在新的 shell 会话中这些设置将不再有效 + +### 练习题 6: 修改`PATH`环境变量 + +* 将`你当前用户的家目录`添加到你的`PATH`环境变量的末尾位置 + + +```bash +mxd@hecs-66950:~$ echo $HOME +/home/mxd +mxd@hecs-66950:~$ vim ~/.bashrc (在最后一行写入:export PATH:$PATH:/home/mxd) +mxd@hecs-66950:~$ source ~/.bashrc (运行Bash Shell) +mxd@hecs-66950:~$ echo $PATH(查看 PATH 环境变量是否已经包含了你家目录的路径) +/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/home/mxd + +``` +将`/tmp`添加到你的`PATH`环境变量的开始位置,(注意:这可能会覆盖其他路径中的同名命令,所以请谨慎操作)。 + +``` +mxd@hecs-66950:~$ vim ~/.bashrc(在一行写入:export PATH:/tmp:$PATH) +mxd@hecs-66950:~$ source ~/.bashrc +mxd@hecs-66950:~$ echo $PATH +/tmp:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/home/mxd:/home/mxd + +``` + +### 练习题 7: 验证`PATH`的修改 + +* 使用`echo`命令显示`PATH`的值,并确认`前面添加的目录`已经被添加到对应位置。 + + +```bash +echo $PATH +/tmp:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/home/mxd:/home/mxd +``` +### 练习题 8: 永久设置环境变量 + +* 在你的shell配置文件中(如`~/.bashrc`、`~/.bash_profile`、`~/.zshrc`等,取决于你使用的shell和配置)添加一行来永久设置`MY_NAME`,值设置为`奥德彪`。 + +例如,对于bash shell,你可以使用: + + +```bash +export MY_NAME="奥德彪" +``` +如何让`MY_NAME`生效,并验证 + +``` +source ~/.bashrc +echo $MY_NAME +``` + +### 练习题 9: 清理 + +* 清除你之前设置的`MY_AGE`和`PATH`的修改(如果你不想永久保留它们)。 + + +```bash +sed -i '/MY_AGE/d' ~/.bashrc +sed -i '/^\/tmp/d' ~/.bashrc +sed -i '/MY_NAME/d' ~/.bashrc +source ~/.bashrc +``` +### 练习题 10: 修改默认器 + +* 使用`EDITOR`变量,修改你默认的编辑器为nano。 + + +```bash +export EDITOR=nano +``` + +### 练习题 11: 修改语言 + +* 使用`LANG`变量,让你的文件支持中文和utf8编码来避免乱码。 + +``` +root@iZf8zh6micauwcw30jcu5tZ:~# ls -l /etc/profile +-rw-r--r-- 1 root root 769 Apr 11 2021 /etc/profile +root@iZf8zh6micauwcw30jcu5tZ:~# chmod +x /etc/profile +root@iZf8zh6micauwcw30jcu5tZ:~# vim /etc/profile + export LANG=zh_CN.utf8 +root@iZf8zh6micauwcw30jcu5tZ:~# source /etc/profile +``` + +- 使用`LANGUAGE`变量,让你的命令提示为中文 + +``` + +``` + -- Gitee